Idioma

DataAnnotationValidateOptions<TOptions>.ValidateAsync Método

Definição

Valida assíncronamente uma instância de opções nomeada específica (ou todas as quando name é nulo).

public System.Threading.Tasks.Task<Microsoft.Extensions.Options.ValidateOptionsResult> ValidateAsync(string? name, TOptions options, System.Threading.CancellationToken cancellationToken = default);
abstract member ValidateAsync : string * 'Options * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Extensions.Options.ValidateOptionsResult>
override this.ValidateAsync : string * 'Options * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Extensions.Options.ValidateOptionsResult>
Public Function ValidateAsync (name As String, options As TOptions, Optional cancellationToken As CancellationToken = Nothing) As Task(Of ValidateOptionsResult)

Parâmetros

name
String

O nome da instância de opções que está a ser validada.

options
TOptions

A instância de opções.

cancellationToken
CancellationToken

O token para monitorizar pedidos de cancelamento.

Devoluções

O ValidateOptionsResult resultado.

Implementações

Observações

O caminho de opções assíncrono incorporado invoca este método em vez de Validate(String, TOptions). Este método realiza validação completa de DataAnnotations, incluindo atributos síncronos e assíncronos, e valida recursivamente membros marcados com ValidateObjectMembersAttribute ou ValidateEnumeratedItemsAttribute. O cancellationToken é propagado a partir de Host.StartAsync(CancellationToken). Por defeito, não é aplicado nenhum timeout de arranque. Configure HostOptions.StartupTimeout ou passe um CancellationToken com um timeout para Host.StartAsync validadores assíncronos vinculados a I/O:

builder.Services.Configure<HostOptions>(opts =>
    opts.StartupTimeout = TimeSpan.FromSeconds(30));

O cancelamento é colaborativo. A limpeza da validação aguarda o início do trabalho, por isso um validador que ignore o token pode atrasar a conclusão. Um token ligado ao timeout solicita o cancelamento; não impõe um prazo rígido de conclusão.

Aplica-se a