DataAnnotationValidateOptions<TOptions>.ValidateAsync Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Valide de façon asynchrone une instance d’options nommées spécifique (ou toutes quand name est Null).
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)
Paramètres
- name
- String
Nom de l’instance d’options validée.
- options
- TOptions
Instance d’options.
- cancellationToken
- CancellationToken
Jeton à surveiller pour les demandes d’annulation.
Retours
Résultat ValidateOptionsResult .
Implémente
Remarques
Le chemin d’accès d’options asynchrones intégré appelle cette méthode au lieu de Validate(String, TOptions). Cette méthode effectue la validation complète des DataAnnotations, y compris les attributs synchrones et asynchrones, et valide de manière récursive les membres marqués avec ValidateObjectMembersAttribute ou ValidateEnumeratedItemsAttribute. Le cancellationToken fichier est propagé à partir de Host.StartAsync(CancellationToken). Par défaut, aucun délai de démarrage n’est appliqué. Configurez ou transmettez HostOptions.StartupTimeout un CancellationToken délai d’expiration pour les validateurs asynchrones liés aux Host.StartAsync E/S liées à une liaison d’E/S :
builder.Services.Configure<HostOptions>(opts =>
opts.StartupTimeout = TimeSpan.FromSeconds(30));
L’annulation est gérée de manière coopérative. Le nettoyage de validation attend le travail démarré. Par conséquent, un validateur qui ignore le jeton peut retarder l’achèvement. Annulation d’un jeton lié au délai d’expiration ; elle n’applique pas d’échéance d’achèvement difficile.