Lenguaje

Validator.ValidateObjectAsync Método

Definición

Sobrecargas

Nombre Description
ValidateObjectAsync(Object, ValidationContext, CancellationToken)

Produce de forma asincrónica un ValidationException si el especificado instance no es válido.

ValidateObjectAsync(Object, ValidationContext, Boolean, CancellationToken)

Produce de forma asincrónica un ValidationException si la instancia de objeto especificada no es válida.

ValidateObjectAsync(Object, ValidationContext, CancellationToken)

Source:
Validator.cs

Produce de forma asincrónica un ValidationException si el especificado instance no es válido.

[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

Parámetros

instance
Object

Instancia de objeto que se va a probar. No se puede null.

validationContext
ValidationContext

Describe el objeto que se está validando y proporciona servicios y contexto para los validadores.

cancellationToken
CancellationToken

Que CancellationToken se debe observar mientras espera a que se complete la tarea.

Devoluciones

que Task representa la operación de validación asincrónica.

Atributos

Excepciones

Cuando instance es null.

Cuando validationContext es null.

Cuando instance no coincide con en ObjectInstancevalidationContext.

Cuando instance se detecta que no es válido.

Se canceló la operación de validación.

Comentarios

Este método comprueba los RequiredAttribute atributos de las propiedades del objeto. Si la validación de propiedades se realiza correctamente, el método evalúa los ValidationAttribute atributos adjuntos al tipo del objeto.

Esta sobrecarga no evalúa otros atributos de validación de nivel de propiedad. Para evaluar esos atributos, llame a la sobrecarga que acepta validateAllProperties con ese argumento establecido trueen .

La validación se ejecuta en tres fases: validación de propiedades, validación de atributos de nivel de tipo y validación de nivel de objeto. Cada fase solo se ejecuta si las fases anteriores se realizan correctamente. La validación de nivel de objeto prefiere invocar ValidateAsync(ValidationContext, CancellationToken) cuando se implementa, con Validate(ValidationContext) como reserva para los objetos que implementan solo la interfaz sincrónica. No invoca ambos.

Se aplica a

ValidateObjectAsync(Object, ValidationContext, Boolean, CancellationToken)

Source:
Validator.cs

Produce de forma asincrónica un ValidationException si la instancia de objeto especificada no es válida.

[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

Parámetros

instance
Object

Instancia de objeto que se va a probar. No se puede null.

validationContext
ValidationContext

Describe el objeto que se está validando y proporciona servicios y contexto para los validadores.

validateAllProperties
Boolean

Si truees , también valida todas las instancepropiedades de .

cancellationToken
CancellationToken

Que CancellationToken se debe observar mientras espera a que se complete la tarea.

Devoluciones

que Task representa la operación de validación asincrónica.

Atributos

Excepciones

Cuando instance es null.

Cuando validationContext es null.

Cuando instance no coincide con en ObjectInstancevalidationContext.

Cuando instance se detecta que no es válido.

Se canceló la operación de validación.

Comentarios

Este método comprueba los RequiredAttribute atributos de las propiedades del objeto incluso cuando validateAllProperties es false. Si la validación de propiedades se realiza correctamente, el método evalúa los ValidationAttribute atributos adjuntos al tipo del objeto.

Si validateAllProperties es true, el método también evalúa otros atributos de validación en las propiedades inmediatas del objeto. Este proceso no valida recursivamente los valores de propiedad.

La validación se ejecuta en tres fases: validación de propiedades, validación de atributos de nivel de tipo y validación de nivel de objeto. Cada fase solo se ejecuta si las fases anteriores se realizan correctamente. La validación de nivel de objeto prefiere invocar ValidateAsync(ValidationContext, CancellationToken) cuando se implementa, con Validate(ValidationContext) como reserva para los objetos que implementan solo la interfaz sincrónica. No invoca ambos.

Se aplica a