Nyelv

AsyncValidationAttribute.IsValidAsync Metódus

Definíció

Felülbírálja ezt a metódust az alosztályokban az aszinkron érvényesítési logika implementálásához.

protected:
 abstract System::Threading::Tasks::Task<System::ComponentModel::DataAnnotations::ValidationResult ^> ^ IsValidAsync(System::Object ^ value, System::ComponentModel::DataAnnotations::ValidationContext ^ validationContext, System::Threading::CancellationToken cancellationToken);
protected abstract System.Threading.Tasks.Task<System.ComponentModel.DataAnnotations.ValidationResult?> IsValidAsync(object? value, System.ComponentModel.DataAnnotations.ValidationContext validationContext, System.Threading.CancellationToken cancellationToken);
abstract member IsValidAsync : obj * System.ComponentModel.DataAnnotations.ValidationContext * System.Threading.CancellationToken -> System.Threading.Tasks.Task<System.ComponentModel.DataAnnotations.ValidationResult>
Protected MustOverride Function IsValidAsync (value As Object, validationContext As ValidationContext, cancellationToken As CancellationToken) As Task(Of ValidationResult)

Paraméterek

value
Object

Az érvényesítendő érték.

validationContext
ValidationContext

Egy ValidationContext példány, amely kontextust biztosít az érvényesítési műveletről, például az érvényesítendő objektumról és tagról. Hozzáférést biztosít az ellenőrzés végrehajtásához szükséges szolgáltatásokhoz a következő használatával IServiceProvider: .

cancellationToken
CancellationToken

A CancellationToken megfigyelendő, miközben a feladat befejezésére vár.

Válaszok

Az Task<TResult> aszinkron érvényesítési műveletet jelképező művelet.

Ha az ellenőrzés érvényes, az eredmény a következő Successlesz: .

Ha az ellenőrzés érvénytelen, az eredmény a következő példánya ValidationResult: .

Megjegyzések

Ennek a módszernek végre kell hajtania az összes vonatkozó ellenőrzést, beleértve a szinkron módon futtatható ellenőrzéseket is. A rendszer nem hívja meg automatikusan a szinkron IsValid(Object, ValidationContext) implementációt a metódus előtt. Szükség esetén megoszthatja a gyakori ellenőrzéseket egy segítőn keresztül.

A implementációknak a lemondás kérése esetén azonnal meg kell figyelnie a megadott cancellationToken és leállított munkát. Előfordulhat, hogy az érvényesítési infrastruktúra megszakítja ezt a jogkivonatot, miután egy érvényesítési hiba miatt leállítja a testvér-érvényesítőket, és a visszatérés előtt minden megkezdett érvényesítési feladatot vár. A lemondást figyelmen kívül hagyó implementáció késleltetheti a meghibásodást és a rövidzárolást.

A következőre érvényes: