Idioma

Validator.TryValidateObjectAsync Método

Definição

Sobrecargas

Nome Descrição
TryValidateObjectAsync(Object, ValidationContext, ICollection<ValidationResult>, CancellationToken)

Testa assíncronamente se a instância do objeto dada é válida.

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

Testa assíncronamente se a instância do objeto dada é válida.

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

Origem:
Validator.cs

Testa assíncronamente se a instância do objeto dada é 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<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)

Parâmetros

instance
Object

A instância do objeto a testar. Não pode ser null.

validationContext
ValidationContext

Descreve o objeto a validar e fornece serviços e contexto para os validadores.

validationResults
ICollection<ValidationResult>

Uma coleção opcional que recebe falhas de validação como ValidationResult instâncias.

cancellationToken
CancellationToken

A CancellationToken para observar enquanto se espera que a tarefa seja concluída.

Devoluções

A, isto étrue, se o objeto for válido, false se forem encontrados erros de Task<TResult> validação.

Atributos

Exceções

Quando instance é null.

Quando validationContext é null.

Quando instance não corresponde ao ObjectInstance .validationContext

A operação de validação foi cancelada.

Observações

Este método avalia todos ValidationAttributeos s associados ao tipo da instância do objeto. Também verifica se todas as propriedades marcadas com RequiredAttribute estão definidas. Não valida o ValidationAttributes nas propriedades individuais do objeto, a menos que TryValidateObjectAsync(Object, ValidationContext, ICollection<ValidationResult>, Boolean, CancellationToken) seja chamado com validateAllProperties definido para true.

A validação decorre em três etapas: validação de propriedades, validação de atributos ao nível do tipo e validação ao nível do objeto. Cada fase só decorre se as fases anteriores forem bem-sucedidas. A validação ao nível do objeto prefere invocar ValidateAsync(ValidationContext, CancellationToken) quando implementada, como Validate(ValidationContext) recurso para objetos que implementam apenas a interface síncrona. Não invoca ambos.

Aplica-se a

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

Origem:
Validator.cs

Testa assíncronamente se a instância do objeto dada é 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<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)

Parâmetros

instance
Object

A instância do objeto a testar. Não pode ser null.

validationContext
ValidationContext

Descreve o objeto a validar e fornece serviços e contexto para os validadores.

validationResults
ICollection<ValidationResult>

Uma coleção opcional que recebe falhas de validação como ValidationResult instâncias.

validateAllProperties
Boolean

Se true, também avalia todas as propriedades do objeto (este processo não é recursivo sobre as propriedades das propriedades).

cancellationToken
CancellationToken

A CancellationToken para observar enquanto se espera que a tarefa seja concluída.

Devoluções

A, isto étrue, se o objeto for válido, false se forem encontrados erros de Task<TResult> validação.

Atributos

Exceções

Quando instance é null.

Quando validationContext é null.

Quando instance não corresponde ao ObjectInstance .validationContext

A operação de validação foi cancelada.

Observações

Este método avalia todos ValidationAttributeos s associados ao tipo da instância do objeto. Também verifica se todas as propriedades marcadas com RequiredAttribute estão definidas. Se validateAllProperties for true, este método também avalia o ValidationAttributes para todas as propriedades imediatas deste objeto. Este processo não é recursivo.

Quando validateAllProperties é true, a validação é iniciada para cada propriedade em sequência. Os atributos síncronos de uma propriedade são executados antes de serem aguardados os atributos assíncronos dessa propriedade. A validação assíncrona que permanece em curso pode sobrepor-se à validação assíncrona para outras propriedades.

Quando validationResults é null, a validação para após o primeiro erro de propriedade (curto-circuito entre propriedades). Quaisquer validadores assíncronos em voo noutras propriedades são cancelados cooperativamente. Quando validationResults é não nulo, todas as propriedades estão completas e todos os erros são recolhidos.

Retornos Task<TResult> para interoperabilidade com padrões padrão de composição assíncrona como Task.WhenAll e Task.WhenAny.

A validação decorre em três etapas: validação de propriedades, validação de atributos ao nível do tipo e validação ao nível do objeto. Cada fase só decorre se as fases anteriores forem bem-sucedidas. A validação ao nível do objeto prefere invocar ValidateAsync(ValidationContext, CancellationToken) quando implementada, como Validate(ValidationContext) recurso para objetos que implementam apenas a interface síncrona. Não invoca ambos.

Aplica-se a