AddDataAnnotationsValidation 方法已过时
自 ASP.NET Core 6 起,扩展方法 EditContextDataAnnotationsExtensions.AddDataAnnotationsValidation(EditContext) 标记为已过时。 开发人员应改用新的扩展方法 EditContextDataAnnotationsExtensions.EnableDataAnnotationsValidation
。
这两个 API 的唯一区别在于它们的返回值:
EditContext AddDataAnnotationsValidation(this EditContext editContext) { ... }
IDisposable EnableDataAnnotationsValidation(this EditContext editContext) { ... }
引入的版本
ASP.NET Core 6.0
旧行为
旧 API AddDataAnnotationsValidation(EditContext) 返回其 EditContext
(作为一种 Fluent API)。
新行为
新 API EnableDataAnnotationsValidation
返回 IDisposable,可释放它来从 EditContext
中删除数据注释验证支持。
更改原因
在某些情况下,需要在添加数据注释验证支持后将其删除。 使用旧 API 时无法删除,因为没有位置可存储内部事件订阅。 新 API 会返回一个对象,用于保存在释放时删除数据注释验证支持所需的状态。
建议的操作
大多数应用程序不需要更改。 直接使用这些扩展方法是一种罕见且高级的情况。 如果应用使用 <DataAnnotationsValidator>
组件,而不是直接调用此方法,则无需更改。
不过,如果确实要调用 editContext.AddDataAnnotationsValidation()
,请将调用替换为 editContext.EnableDataAnnotationsValidation()
。 如果要撤消调用的效果,可选择捕获新返回的 IDisposable
对象并释放它。
受影响的 API
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈