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