EditContext.ValidateAsync(CancellationToken) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Valida esto EditContext de forma asincrónica.
Cancela las tareas pendientes de validación asincrónica de nivel de campo, invoca los controladores sincrónicos OnValidationRequested y, a continuación, invoca y espera a los controladores asincrónicos OnValidationRequestedAsync simultáneamente. Las excepciones de los controladores sincrónicos se propagan al autor de la llamada, que coinciden con Validate(). Se incluye cualquier excepción de no cancelación producida por un controlador asincrónico: el formulario se marca como erróneo (observable a través del sin parámetros IsValidationFaulted()) y el método devuelve false.
Mientras la parte asincrónica está en curso, el valor sin IsValidationPending() parámetros devuelve true para que las aplicaciones puedan mostrar una "validación..." global. indicador sin ajustar la llamada a sí mismos. El resultado de nivel IsValidationFaulted() de formulario solo se actualiza cuando se completa un pase; se conserva en los pases cancelados por el autor de la llamada.
public System.Threading.Tasks.Task<bool> ValidateAsync(System.Threading.CancellationToken cancellationToken = default);
member this.ValidateAsync : System.Threading.CancellationToken -> System.Threading.Tasks.Task<bool>
Public Function ValidateAsync (Optional cancellationToken As CancellationToken = Nothing) As Task(Of Boolean)
Parámetros
- cancellationToken
- CancellationToken
Token que indica la cancelación de este pase de validación. El token se expone a los controladores asincrónicos mediante CancellationToken. Si el autor de la llamada cancela el token, este método produce OperationCanceledException; el formulario no se marca como erróneo en ese caso y se conserva el estado de error de nivel de formulario anterior. El token solo enlaza el pase en curso; Las tareas de validación de nivel de campo que se inician de forma independiente durante la ventana esperada (por ejemplo, desde ediciones de usuario) no están vinculadas a este token y continúan ejecutándose.
Devoluciones
True si no hay ningún mensaje de validación después de la validación y no se ha producido ningún error en el controlador asincrónico; de lo contrario, false.
Excepciones
Se produce cuando cancellationToken se cancela antes o durante el paso de validación.
Comentarios
No se debe volver a escribir la validación. No llame a Validate() ni ValidateAsync(CancellationToken) desde dentro de un OnValidationRequestedcontrolador , OnValidationRequestedAsynco OnValidationStateChanged asociado al mismo EditContext; al hacerlo, se producirá un comportamiento indefinido.