Udostępnij za pośrednictwem


Metoda AddDataAnnotationsValidation jest przestarzała

Metoda EditContextDataAnnotationsExtensions.AddDataAnnotationsValidation(EditContext) rozszerzenia jest oznaczona jako przestarzała, począwszy od ASP.NET Core 6. Deweloperzy powinni zamiast tego używać nowej metody EditContextDataAnnotationsExtensions.EnableDataAnnotationsValidation rozszerzenia.

Jedyną różnicą między tymi dwoma interfejsami API jest ich wartość zwracana:

EditContext AddDataAnnotationsValidation(this EditContext editContext) { ... }

IDisposable EnableDataAnnotationsValidation(this EditContext editContext) { ... }

Wprowadzona wersja

ASP.NET Core 6.0

Stare zachowanie

Starszy interfejs API AddDataAnnotationsValidation(EditContext), , zwraca wartość EditContext (jako rodzaj płynnego interfejsu API).

Nowe zachowanie

Nowy interfejs API , zwraca obiektIDisposable, EnableDataAnnotationsValidationktórego usuwanie może służyć do usuwania obsługi walidacji adnotacji danych z klasy EditContext.

Przyczyna wprowadzenia zmiany

Istnieją przypadki, w których pożądane jest usunięcie obsługi walidacji adnotacji danych po dodaniu. Nie było to możliwe w przypadku starszego interfejsu API, ponieważ nie było miejsca do przechowywania wewnętrznych subskrypcji zdarzeń. Nowy interfejs API zwraca obiekt, który przechowuje stan niezbędny do usunięcia obsługi walidacji adnotacji danych po usunięciu.

Większość aplikacji nie musi być zmieniana. Bezpośrednie zastosowanie tych metod rozszerzenia jest rzadkim i zaawansowanym przypadkiem. Jeśli aplikacja używa <DataAnnotationsValidator> składnika zamiast bezpośredniego wywoływania tej metody, nie trzeba jej zmieniać.

Jeśli jednak wywołasz metodę editContext.AddDataAnnotationsValidation(), zastąp to wywołanie .editContext.EnableDataAnnotationsValidation() Opcjonalnie przechwyć nowy zwrócony IDisposable obiekt i usunąć go później, jeśli chcesz cofnąć efekty wywołania.

Dotyczy interfejsów API