Bahasa

EditContext.ValidateAsync(CancellationToken) Metode

Definisi

Memvalidasi ini EditContext secara asinkron. Membatalkan tugas validasi asinkron tingkat bidang yang tertunda, memanggil handler sinkron OnValidationRequested , lalu memanggil dan menunggu handler asinkron OnValidationRequestedAsync secara bersamaan. Pengecualian dari handler sinkron menyebar ke pemanggil, cocok Validate(). Setiap pengecualian non-pembatalan yang dilemparkan oleh handler asinkron terkandung: formulir ditandai sebagai rusak (dapat diamati melalui parameterless IsValidationFaulted()) dan metode mengembalikan false. Meskipun bagian asinkron sedang dalam penerbangan, pengembalian true tanpa IsValidationPending() parameter sehingga aplikasi dapat menunjukkan "memvalidasi..." global indikator tanpa membungkus panggilan itu sendiri. Hasil tingkat IsValidationFaulted() formulir diperbarui hanya ketika pass selesai; hasil tersebut dipertahankan di seluruh pass yang dibatalkan penelepon.

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)

Parameter

cancellationToken
CancellationToken

Token yang menandakan pembatalan lulus validasi ini. Token diekspos ke handler asinkron melalui CancellationToken. Jika penelepon membatalkan token, metode ini melempar OperationCanceledException; formulir tidak ditandai sebagai rusak dalam kasus itu dan status kesalahan tingkat formulir sebelumnya dipertahankan. Token hanya mengikat pass dalam penerbangan; tugas validasi tingkat bidang yang dimulai secara independen selama jendela yang ditunggu (misalnya, dari pengeditan pengguna) tidak ditautkan ke token ini dan terus berjalan.

Mengembalikan

True jika tidak ada pesan validasi setelah validasi dan tidak ada handler asinkron yang rusak; jika tidak salah.

Pengecualian

Dilemparkan ketika cancellationToken dibatalkan sebelum atau selama lulus validasi.

Keterangan

Validasi tidak boleh dimasukkan kembali. Jangan memanggil Validate() atau ValidateAsync(CancellationToken) dari dalam OnValidationRequested, , OnValidationRequestedAsyncatau OnValidationStateChanged handler yang dilampirkan ke yang sama EditContext; melakukannya menghasilkan perilaku yang tidak terdefinisi.

Berlaku untuk