Validator.ValidateObjectAsync Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Přetížení
| Název | Description |
|---|---|
| ValidateObjectAsync(Object, ValidationContext, CancellationToken) |
Asynchronně vyvolá ValidationException chybu, pokud daná |
| ValidateObjectAsync(Object, ValidationContext, Boolean, CancellationToken) |
Asynchronně vyvolá ValidationException výjimku, pokud daná instance objektu není platná. |
ValidateObjectAsync(Object, ValidationContext, CancellationToken)
- Zdroj:
- Validator.cs
Asynchronně vyvolá ValidationException chybu, pokud daná instance hodnota není platná.
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Constructing a ValidationContext without a display name is not trim-safe because it uses reflection to discover the type of the instance being validated in order to resolve the DisplayNameAttribute when a display name is not provided.")]
public static System.Threading.Tasks.Task ValidateObjectAsync(object instance, System.ComponentModel.DataAnnotations.ValidationContext validationContext, System.Threading.CancellationToken cancellationToken = default);
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Constructing a ValidationContext without a display name is not trim-safe because it uses reflection to discover the type of the instance being validated in order to resolve the DisplayNameAttribute when a display name is not provided.")>]
static member ValidateObjectAsync : obj * System.ComponentModel.DataAnnotations.ValidationContext * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Shared Function ValidateObjectAsync (instance As Object, validationContext As ValidationContext, Optional cancellationToken As CancellationToken = Nothing) As Task
Parametry
- instance
- Object
Instance objektu, která se má testovat. Nemůže být null.
- validationContext
- ValidationContext
Popisuje objekt, který se ověřuje, a poskytuje služby a kontext pro validátory.
- cancellationToken
- CancellationToken
A CancellationToken , která se má sledovat při čekání na dokončení úkolu.
Návraty
A Task představující asynchronní ověřovací operaci.
- Atributy
Výjimky
Kdy instance je null.
Kdy validationContext je null.
Pokud instance se neshoduje s zapnutou .ObjectInstancevalidationContext
Kdy instance se zjistí, že je neplatný.
Operace ověření byla zrušena.
Poznámky
Tato metoda kontroluje RequiredAttribute atributy vlastností objektu. Pokud ověření vlastnosti proběhne úspěšně, metoda vyhodnotí ValidationAttribute atributy připojené k typu objektu.
Toto přetížení nevyhodnocuje další atributy ověřování na úrovni vlastností. Chcete-li tyto atributy vyhodnotit, zavolejte přetížení, které přijímá validateAllProperties s daným argumentem nastaveným na true.
Ověřování se spouští ve třech fázích: ověřování vlastností, ověření atributu na úrovni typu a ověřování na úrovni objektu. Každá fáze se spustí pouze v případě, že předchozí fáze proběhnou úspěšně. Ověřování na úrovni objektu dává přednost vyvolání ValidateAsync(ValidationContext, CancellationToken) při implementaci, s Validate(ValidationContext) jako záložní pro objekty, které implementují pouze synchronní rozhraní. Nevyvolá obojí.
Platí pro
ValidateObjectAsync(Object, ValidationContext, Boolean, CancellationToken)
- Zdroj:
- Validator.cs
Asynchronně vyvolá ValidationException výjimku, pokud daná instance objektu není platná.
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Constructing a ValidationContext without a display name is not trim-safe because it uses reflection to discover the type of the instance being validated in order to resolve the DisplayNameAttribute when a display name is not provided.")]
public static System.Threading.Tasks.Task ValidateObjectAsync(object instance, System.ComponentModel.DataAnnotations.ValidationContext validationContext, bool validateAllProperties, System.Threading.CancellationToken cancellationToken = default);
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Constructing a ValidationContext without a display name is not trim-safe because it uses reflection to discover the type of the instance being validated in order to resolve the DisplayNameAttribute when a display name is not provided.")>]
static member ValidateObjectAsync : obj * System.ComponentModel.DataAnnotations.ValidationContext * bool * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Shared Function ValidateObjectAsync (instance As Object, validationContext As ValidationContext, validateAllProperties As Boolean, Optional cancellationToken As CancellationToken = Nothing) As Task
Parametry
- instance
- Object
Instance objektu, která se má testovat. Nemůže být null.
- validationContext
- ValidationContext
Popisuje objekt, který se ověřuje, a poskytuje služby a kontext pro validátory.
- validateAllProperties
- Boolean
Pokud také ověří všechny vlastnosti.<
- cancellationToken
- CancellationToken
A CancellationToken , která se má sledovat při čekání na dokončení úkolu.
Návraty
A Task představující asynchronní ověřovací operaci.
- Atributy
Výjimky
Kdy instance je null.
Kdy validationContext je null.
Pokud instance se neshoduje s zapnutou .ObjectInstancevalidationContext
Kdy instance se zjistí, že je neplatný.
Operace ověření byla zrušena.
Poznámky
Tato metoda kontroluje RequiredAttribute atributy vlastností objektu, i když validateAllProperties je false. Pokud ověření vlastnosti proběhne úspěšně, metoda vyhodnotí ValidationAttribute atributy připojené k typu objektu.
Pokud validateAllProperties je true, metoda také vyhodnotí další ověřovací atributy na bezprostřední vlastnosti objektu. Tento proces nerekurzivně neověřuje hodnoty vlastností.
Ověřování se spouští ve třech fázích: ověřování vlastností, ověření atributu na úrovni typu a ověřování na úrovni objektu. Každá fáze se spustí pouze v případě, že předchozí fáze proběhnou úspěšně. Ověřování na úrovni objektu dává přednost vyvolání ValidateAsync(ValidationContext, CancellationToken) při implementaci, s Validate(ValidationContext) jako záložní pro objekty, které implementují pouze synchronní rozhraní. Nevyvolá obojí.