IAsyncValidatableObject Interface
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Fornece uma maneira de um objeto ser validado de forma assíncrona.
public interface class IAsyncValidatableObject : System::ComponentModel::DataAnnotations::IValidatableObject
public interface IAsyncValidatableObject : System.ComponentModel.DataAnnotations.IValidatableObject
type IAsyncValidatableObject = interface
interface IValidatableObject
Public Interface IAsyncValidatableObject
Implements IValidatableObject
- Implementações
Comentários
Quando um objeto é implementado IAsyncValidatableObject, as APIs assíncronas Validator (como TryValidateObjectAsync(Object, ValidationContext, ICollection<ValidationResult>, CancellationToken)) invocam apenas ValidateAsync(ValidationContext, CancellationToken); Validate(ValidationContext) não são chamadas no caminho assíncrono. As APIs síncronas Validator continuam a invocar Validate(ValidationContext).
Forneça uma implementação síncrona de Validate(ValidationContext) quando ele pode avaliar as regras aplicáveis, retornando erros de validação para regras que rejeitam o objeto. Se uma regra necessária se aplicar, mas não puder ser avaliada de forma síncrona, jogue InvalidOperationException com uma mensagem direcionando os chamadores para um ponto de entrada de validação assíncrona.
Retornar nenhum erro de validação sem avaliar uma regra é apropriado somente quando a regra não se aplica. Não retorne um resultado vazio apenas porque uma verificação assíncrona necessária se aplica, mas não pode ser executada de forma síncrona. Um resultado vazio não indica a validação pendente ou organiza uma invocação assíncrona posterior.
Não implemente Validate(ValidationContext) bloqueando o trabalho assíncrono ou resultados enumerados de forma assíncrona.
Métodos
| Nome | Description |
|---|---|
| Validate(ValidationContext) |
Determina se o objeto especificado é válido. (Herdado de IValidatableObject) |
| ValidateAsync(ValidationContext, CancellationToken) |
Determina se o objeto especificado é válido de forma assíncrona, gerando resultados de validação conforme cada verificação é concluída. |