AsyncValidationAttribute.IsValidAsync Metódus
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
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.