語言

AsyncValidationAttribute.IsValid 方法

定義

多載

名稱 Description
IsValid(Object)

將該委派封印IsValid(Object)覆蓋至過載,ValidationContext使AsyncValidationAttribute實作只需透過 提供單一同步備援。IsValid(Object, ValidationContext)

IsValid(Object, ValidationContext)

定義此屬性的同步驗證行為。

IsValid(Object)

來源:
AsyncValidationAttribute.cs

將該委派封印IsValid(Object)覆蓋至過載,ValidationContext使AsyncValidationAttribute實作只需透過 提供單一同步備援。IsValid(Object, ValidationContext)

public:
 override bool IsValid(System::Object ^ value);
public override sealed bool IsValid(object? value);
override this.IsValid : obj -> bool
Public Overrides NotOverridable Function IsValid (value As Object) As Boolean

參數

value
Object

要驗證的值。

傳回

true若該值有效;否則,。 false

適用於

IsValid(Object, ValidationContext)

來源:
AsyncValidationAttribute.cs

定義此屬性的同步驗證行為。

protected:
 abstract System::ComponentModel::DataAnnotations::ValidationResult ^ IsValid(System::Object ^ value, System::ComponentModel::DataAnnotations::ValidationContext ^ validationContext);
protected abstract System.ComponentModel.DataAnnotations.ValidationResult? IsValid(object? value, System.ComponentModel.DataAnnotations.ValidationContext validationContext);
override this.IsValid : obj * System.ComponentModel.DataAnnotations.ValidationContext -> System.ComponentModel.DataAnnotations.ValidationResult
Protected MustOverride Function IsValid (value As Object, validationContext As ValidationContext) As ValidationResult

參數

value
Object

要驗證的值。

validationContext
ValidationContext

提供 ValidationContext 驗證操作上下文的實例,例如被驗證的物件與成員。 提供使用驗證所需的 IServiceProvider服務存取。 當上下文IsValid(Object)過載呼叫此方法時,此值可為null此值。

傳回

Success 當驗證是有效的。

驗證無效的例子 ValidationResult 。

備註

同步驗證的消費者會使用此方法。 當能評估適用規則時,提供同步實作;當規則拒絕該值時,回傳驗證錯誤。 若適用必要規則但無法同步評估,則 InvalidOperationException 以訊息指示呼叫者至非同步驗證入口點。 無支持的調用並不能證明該值無效。

只有在規則不適用時,才可不評估規則而回歸 Success 。 不要僅因為需要非同步檢查但無法同步執行,就回傳成功。 成功並不代表驗證尚未完成,也不代表安排後續的非同步調用。

此方法不應透過非同步工作 Task<TResult>.Result、 Task.Wait()、 或 GetAwaiter().GetResult()來阻擋。 將非同步操作包覆於 中 Task.Run 並不適合區塊等待。

適用於