EditContext.ValidateAsync(CancellationToken) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
非同步驗證此點 EditContext 。
取消所有待處理的現場層級非同步驗證任務, OnValidationRequested 呼叫同步處理程序,然後同時呼叫並等待非同步 OnValidationRequestedAsync 處理程序。 同步處理器的例外會傳播給呼叫者,匹配 Validate()。 非同步處理器拋出的任何非消去例外都會被包含:表單標記為有故障(可透過無 IsValidationFaulted()參數觀察),而方法回傳 false。
當非同步部分正在執行時,無 IsValidationPending() 參數會回傳 true ,因此應用程式可以顯示一個全域的「驗證......」指示器,但不會自行包線通話。 表單層 IsValidationFaulted() 級的結果僅在通關完成時更新;該結果會在呼叫者取消的通關中保留。
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)
參數
- cancellationToken
- CancellationToken
一個標記,表示取消此驗證通過。 該令牌透過 暴露給非同步處理程序 CancellationToken。 若呼叫者取消該標記,此方法會拋 OperationCanceledException出;此時表單不會被標記為錯誤,且先前的表單層級錯誤狀態會被保留。 該代幣僅限於飛行中通行證;在等待視窗期間獨立啟動的欄位層級驗證任務(例如從使用者編輯開始)不會連結到此令牌,並持續執行。
傳回
若驗證後沒有驗證訊息且沒有非同步處理程序錯誤,則為真;否則為假。
例外狀況
當 cancellationToken 在驗證通過前或期間被取消時會丟棄。
備註
驗證不得重新輸入。 請勿呼叫 Validate() 或 ValidateAsync(CancellationToken) 從連接於同一EditContext對象的 、 OnValidationRequestedAsync、 或OnValidationStateChanged處理器內部OnValidationRequested;否則會產生未定義的行為。