扩展方法 EditContextDataAnnotationsExtensions.AddDataAnnotationsValidation(EditContext) 从 ASP.NET Core 6 开始标记为已过时。 开发人员应改用新的扩展方法 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
对象,如果想要撤销调用的影响,请稍后处置该对象。