Langue

Validator.TryValidateObjectAsync Méthode

Définition

Surcharges

Nom Description
TryValidateObjectAsync(Object, ValidationContext, ICollection<ValidationResult>, CancellationToken)

Teste de façon asynchrone si l’instance d’objet donnée est valide.

TryValidateObjectAsync(Object, ValidationContext, ICollection<ValidationResult>, Boolean, CancellationToken)

Teste de façon asynchrone si l’instance d’objet donnée est valide.

TryValidateObjectAsync(Object, ValidationContext, ICollection<ValidationResult>, CancellationToken)

Source:
Validator.cs

Teste de façon asynchrone si l’instance d’objet donnée est valide.

[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<bool> TryValidateObjectAsync(object instance, System.ComponentModel.DataAnnotations.ValidationContext validationContext, System.Collections.Generic.ICollection<System.ComponentModel.DataAnnotations.ValidationResult>? validationResults, 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 TryValidateObjectAsync : obj * System.ComponentModel.DataAnnotations.ValidationContext * System.Collections.Generic.ICollection<System.ComponentModel.DataAnnotations.ValidationResult> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<bool>
Public Shared Function TryValidateObjectAsync (instance As Object, validationContext As ValidationContext, validationResults As ICollection(Of ValidationResult), Optional cancellationToken As CancellationToken = Nothing) As Task(Of Boolean)

Paramètres

instance
Object

Instance d’objet à tester. Il ne peut pas être null.

validationContext
ValidationContext

Décrit l’objet à valider et fournit des services et un contexte pour les validateurs.

validationResults
ICollection<ValidationResult>

Collection facultative qui reçoit des échecs de validation en tant qu’instances ValidationResult .

cancellationToken
CancellationToken

À CancellationToken observer lors de l’attente de la fin de la tâche.

Retours

C’est-à-dire Task<TResult>true si l’objet est valide, false si des erreurs de validation sont rencontrées.

Attributs

Exceptions

Quand instance est null.

Quand validationContext est null.

Quand instance ne correspond pas à l’on ObjectInstancevalidationContext.

L’opération de validation a été annulée.

Remarques

Cette méthode évalue tous les ValidationAttributefichiers attachés au type de l’instance d’objet. Elle vérifie également que toutes les propriétés marquées avec RequiredAttribute sont définies. Elle ne valide pas les ValidationAttributes sur des propriétés individuelles de l’objet, sauf si TryValidateObjectAsync(Object, ValidationContext, ICollection<ValidationResult>, Boolean, CancellationToken) elle est appelée avec validateAllProperties la valeur définie truesur .

La validation s’exécute en trois étapes : validation des propriétés, validation d’attribut au niveau du type et validation au niveau de l’objet. Chaque étape s’exécute uniquement si les étapes précédentes réussissent. La validation au niveau de l’objet préfère appeler ValidateAsync(ValidationContext, CancellationToken) en cas d’implémentation, avec Validate(ValidationContext) comme secours pour les objets qui implémentent uniquement l’interface synchrone. Il n’appelle pas les deux.

S’applique à

TryValidateObjectAsync(Object, ValidationContext, ICollection<ValidationResult>, Boolean, CancellationToken)

Source:
Validator.cs

Teste de façon asynchrone si l’instance d’objet donnée est valide.

[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<bool> TryValidateObjectAsync(object instance, System.ComponentModel.DataAnnotations.ValidationContext validationContext, System.Collections.Generic.ICollection<System.ComponentModel.DataAnnotations.ValidationResult>? validationResults, 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 TryValidateObjectAsync : obj * System.ComponentModel.DataAnnotations.ValidationContext * System.Collections.Generic.ICollection<System.ComponentModel.DataAnnotations.ValidationResult> * bool * System.Threading.CancellationToken -> System.Threading.Tasks.Task<bool>
Public Shared Function TryValidateObjectAsync (instance As Object, validationContext As ValidationContext, validationResults As ICollection(Of ValidationResult), validateAllProperties As Boolean, Optional cancellationToken As CancellationToken = Nothing) As Task(Of Boolean)

Paramètres

instance
Object

Instance d’objet à tester. Il ne peut pas être null.

validationContext
ValidationContext

Décrit l’objet à valider et fournit des services et un contexte pour les validateurs.

validationResults
ICollection<ValidationResult>

Collection facultative qui reçoit des échecs de validation en tant qu’instances ValidationResult .

validateAllProperties
Boolean

Si true, évalue également toutes les propriétés de l’objet (ce processus n’est pas récursif sur les propriétés des propriétés).

cancellationToken
CancellationToken

À CancellationToken observer lors de l’attente de la fin de la tâche.

Retours

C’est-à-dire Task<TResult>true si l’objet est valide, false si des erreurs de validation sont rencontrées.

Attributs

Exceptions

Quand instance est null.

Quand validationContext est null.

Quand instance ne correspond pas à l’on ObjectInstancevalidationContext.

L’opération de validation a été annulée.

Remarques

Cette méthode évalue tous les ValidationAttributefichiers attachés au type de l’instance d’objet. Elle vérifie également que toutes les propriétés marquées avec RequiredAttribute sont définies. Si validateAllProperties c’est truele cas, cette méthode évalue également les ValidationAttributes pour toutes les propriétés immédiates de cet objet. Ce processus n’est pas récursif.

Quand validateAllProperties c’est truele cas, la validation est démarrée pour chaque propriété en séquence. Les attributs synchrones d’une propriété s’exécutent avant que les attributs asynchrones de cette propriété ne soient attendus. La validation asynchrone qui reste en cours peut chevaucher la validation asynchrone pour d’autres propriétés.

Quand validationResults c’est nullle cas, la validation s’arrête après la première erreur de propriété (court-circuit inter-propriété). Tous les validateurs asynchrones en vol sur d’autres propriétés sont annulés de manière coopérative. Lorsqu’elle validationResults n’est pas null, toutes les propriétés sont terminées et toutes les erreurs sont collectées.

Retourne Task<TResult> pour l’interopérabilité avec des modèles de composition asynchrone standard tels que Task.WhenAll et Task.WhenAny.

La validation s’exécute en trois étapes : validation des propriétés, validation d’attribut au niveau du type et validation au niveau de l’objet. Chaque étape s’exécute uniquement si les étapes précédentes réussissent. La validation au niveau de l’objet préfère appeler ValidateAsync(ValidationContext, CancellationToken) en cas d’implémentation, avec Validate(ValidationContext) comme secours pour les objets qui implémentent uniquement l’interface synchrone. Il n’appelle pas les deux.

S’applique à