Validator.ValidateObjectAsync Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Överlagringar
| Name | Description |
|---|---|
| ValidateObjectAsync(Object, ValidationContext, CancellationToken) |
Genererar asynkront en ValidationException om angiven |
| ValidateObjectAsync(Object, ValidationContext, Boolean, CancellationToken) |
Genererar asynkront en ValidationException om den angivna objektinstansen inte är giltig. |
ValidateObjectAsync(Object, ValidationContext, CancellationToken)
- Källa:
- Validator.cs
Genererar asynkront en ValidationException om angiven instance inte är giltig.
[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
Parametrar
- instance
- Object
Objektinstansen som ska testas. Det kan inte vara null.
- validationContext
- ValidationContext
Beskriver objektet som verifieras och tillhandahåller tjänster och kontext för validatorerna.
- cancellationToken
- CancellationToken
A CancellationToken att observera i väntan på att uppgiften ska slutföras.
Returer
En Task som representerar den asynkrona valideringsåtgärden.
- Attribut
Undantag
När instance är null.
När validationContext är null.
När instance matchar inte den ObjectInstance på validationContext.
När instance visar sig vara ogiltigt.
Valideringsåtgärden avbröts.
Kommentarer
Den här metoden kontrollerar attributen RequiredAttribute för objektets egenskaper. Om egenskapsverifieringen lyckas utvärderar metoden de ValidationAttribute attribut som är kopplade till objektets typ.
Den här överlagringen utvärderar inte andra valideringsattribut på egenskapsnivå. Om du vill utvärdera dessa attribut anropar validateAllProperties du den överlagring som accepterar med argumentet inställt på true.
Valideringen körs i tre steg: egenskapsverifiering, validering av attribut på typnivå och validering på objektnivå. Varje fas körs endast om föregående steg lyckas. Validering på objektnivå föredrar att ValidateAsync(ValidationContext, CancellationToken) anropa när det implementeras, med Validate(ValidationContext) som reserv för objekt som endast implementerar det synkrona gränssnittet. Den anropar inte båda.
Gäller för
ValidateObjectAsync(Object, ValidationContext, Boolean, CancellationToken)
- Källa:
- Validator.cs
Genererar asynkront en ValidationException om den angivna objektinstansen inte är giltig.
[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
Parametrar
- instance
- Object
Objektinstansen som ska testas. Det kan inte vara null.
- validationContext
- ValidationContext
Beskriver objektet som verifieras och tillhandahåller tjänster och kontext för validatorerna.
- validateAllProperties
- Boolean
Om trueverifierar även alla egenskaper för instance.
- cancellationToken
- CancellationToken
A CancellationToken att observera i väntan på att uppgiften ska slutföras.
Returer
En Task som representerar den asynkrona valideringsåtgärden.
- Attribut
Undantag
När instance är null.
När validationContext är null.
När instance matchar inte den ObjectInstance på validationContext.
När instance visar sig vara ogiltigt.
Valideringsåtgärden avbröts.
Kommentarer
Den här metoden kontrollerar attributen RequiredAttribute på objektets egenskaper även när validateAllProperties är false. Om egenskapsverifieringen lyckas utvärderar metoden de ValidationAttribute attribut som är kopplade till objektets typ.
Om validateAllProperties är trueutvärderar metoden även andra valideringsattribut på objektets omedelbara egenskaper. Den här processen validerar inte egenskapsvärden rekursivt.
Valideringen körs i tre steg: egenskapsverifiering, validering av attribut på typnivå och validering på objektnivå. Varje fas körs endast om föregående steg lyckas. Validering på objektnivå föredrar att ValidateAsync(ValidationContext, CancellationToken) anropa när det implementeras, med Validate(ValidationContext) som reserv för objekt som endast implementerar det synkrona gränssnittet. Den anropar inte båda.