語言

Validator.TryValidatePropertyAsync 方法

定義

非同步測試給定屬性值是否有效。

[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("The Type of validationContext.ObjectType cannot be statically discovered.")]
public static System.Threading.Tasks.Task<bool> TryValidatePropertyAsync(object? value, System.ComponentModel.DataAnnotations.ValidationContext validationContext, System.Collections.Generic.ICollection<System.ComponentModel.DataAnnotations.ValidationResult>? validationResults, System.Threading.CancellationToken cancellationToken = default);
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("The Type of validationContext.ObjectType cannot be statically discovered.")>]
static member TryValidatePropertyAsync : obj * System.ComponentModel.DataAnnotations.ValidationContext * System.Collections.Generic.ICollection<System.ComponentModel.DataAnnotations.ValidationResult> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<bool>
Public Shared Function TryValidatePropertyAsync (value As Object, validationContext As ValidationContext, validationResults As ICollection(Of ValidationResult), Optional cancellationToken As CancellationToken = Nothing) As Task(Of Boolean)

參數

value
Object

這是要檢定的值。

validationContext
ValidationContext

描述驗證的屬性成員,並為驗證者提供服務與上下文。

validationResults
ICollection<ValidationResult>

一個可選的集合,將驗證失敗作為 ValidationResult 實例接收。

cancellationToken
CancellationToken

A CancellationToken 在等待任務完成時觀察。

傳回

Task<TResult> A,即true值有效false且是否遇到驗證錯誤。

屬性

例外狀況

validationContext 是 null,或 MemberName 是 null 空的。

MemberName 無法識別有效的公共非索引器屬性,或 value 無法指派該屬性。

驗證作業被取消。

備註

此方法測試與 所validationContext識別屬性相關的每個 ValidationAttribute 。 若 validationResults 非空,此方法每次驗證失敗時會加入 a ValidationResult 。

若在該物件上發現了 , RequiredAttribute 該物件會在所有其他驗證屬性之前進行評估。 若驗證器失敗,驗證停止,適用時將該單一失敗 validationResults 加入集合並回傳 false。

所有同步驗證屬性通過後,任何 AsyncValidationAttribute 實例都會以非同步方式評估。

適用於