Lingua

Validator.ValidateObjectAsync Metodo

Definizione

Overload

Nome Descrizione
ValidateObjectAsync(Object, ValidationContext, CancellationToken)

Genera un'eccezione ValidationException in modo asincrono se l'oggetto specificato instance non è valido.

ValidateObjectAsync(Object, ValidationContext, Boolean, CancellationToken)

Genera un'eccezione ValidationException in modo asincrono se l'istanza dell'oggetto specificata non è valida.

ValidateObjectAsync(Object, ValidationContext, CancellationToken)

Origine:
Validator.cs

Genera un'eccezione ValidationException in modo asincrono se l'oggetto specificato instance non è valido.

[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

Parametri

instance
Object

Istanza dell'oggetto da testare. Non può essere null.

validationContext
ValidationContext

Descrive l'oggetto da convalidare e fornisce servizi e contesto per i validator.

cancellationToken
CancellationToken

Oggetto CancellationToken da osservare durante l'attesa del completamento dell'attività.

Valori restituiti

Oggetto Task che rappresenta l'operazione di convalida asincrona.

Attributi

Eccezioni

Quando instance è null.

Quando validationContext è null.

Quando instance non corrisponde a in ObjectInstance .validationContext

Quando instance viene trovato non valido.

L'operazione di convalida è stata annullata.

Commenti

Questo metodo controlla gli RequiredAttribute attributi nelle proprietà dell'oggetto. Se la convalida della proprietà ha esito positivo, il metodo valuta gli ValidationAttribute attributi associati al tipo dell'oggetto.

Questo overload non valuta altri attributi di convalida a livello di proprietà. Per valutare tali attributi, chiamare l'overload che accetta validateAllProperties con tale argomento impostato su true.

La convalida viene eseguita in tre fasi: convalida delle proprietà, convalida degli attributi a livello di tipo e convalida a livello di oggetto. Ogni fase viene eseguita solo se le fasi precedenti hanno esito positivo. La convalida a livello di oggetto preferisce richiamare ValidateAsync(ValidationContext, CancellationToken) quando implementata, con Validate(ValidationContext) come fallback per gli oggetti che implementano solo l'interfaccia sincrona. Non richiama entrambi.

Si applica a

ValidateObjectAsync(Object, ValidationContext, Boolean, CancellationToken)

Origine:
Validator.cs

Genera un'eccezione ValidationException in modo asincrono se l'istanza dell'oggetto specificata non è valida.

[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

Parametri

instance
Object

Istanza dell'oggetto da testare. Non può essere null.

validationContext
ValidationContext

Descrive l'oggetto da convalidare e fornisce servizi e contesto per i validator.

validateAllProperties
Boolean

Se true, convalida anche tutte le instanceproprietà dell'oggetto .

cancellationToken
CancellationToken

Oggetto CancellationToken da osservare durante l'attesa del completamento dell'attività.

Valori restituiti

Oggetto Task che rappresenta l'operazione di convalida asincrona.

Attributi

Eccezioni

Quando instance è null.

Quando validationContext è null.

Quando instance non corrisponde a in ObjectInstance .validationContext

Quando instance viene trovato non valido.

L'operazione di convalida è stata annullata.

Commenti

Questo metodo controlla gli RequiredAttribute attributi sulle proprietà dell'oggetto anche quando validateAllProperties è false. Se la convalida della proprietà ha esito positivo, il metodo valuta gli ValidationAttribute attributi associati al tipo dell'oggetto.

Se validateAllProperties è true, il metodo valuta anche altri attributi di convalida sulle proprietà immediate dell'oggetto. Questo processo non convalida in modo ricorsivo i valori delle proprietà.

La convalida viene eseguita in tre fasi: convalida delle proprietà, convalida degli attributi a livello di tipo e convalida a livello di oggetto. Ogni fase viene eseguita solo se le fasi precedenti hanno esito positivo. La convalida a livello di oggetto preferisce richiamare ValidateAsync(ValidationContext, CancellationToken) quando implementata, con Validate(ValidationContext) come fallback per gli oggetti che implementano solo l'interfaccia sincrona. Non richiama entrambi.

Si applica a