AsyncValidationAttribute.IsValid 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重载
| 名称 | 说明 |
|---|---|
| IsValid(Object) |
该委托的 IsValid(Object) 密封重写到 ValidationContext 重载,以便 AsyncValidationAttribute 实现只需通过 IsValid(Object, ValidationContext)提供单个同步回退。 |
| IsValid(Object, ValidationContext) |
定义此属性的同步验证行为。 |
IsValid(Object)
- Source:
- 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)
- Source:
- 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 有关验证操作的上下文的实例,例如要验证的对象和成员。 提供对使用 null 当无 IsValid(Object) 上下文重载调用此方法时。
返回
Success 验证有效时。
验证无效的 ValidationResult 实例。
注解
同步验证使用者调用此方法。 在可以评估适用规则时提供同步实现,并在规则拒绝该值时返回验证错误。 如果所需的规则适用但无法同步评估,则引发 InvalidOperationException 消息将调用方定向到异步验证入口点。 不支持的调用不确定该值无效。
Success仅当规则不适用时,才返回而不计算规则。 不要仅仅因为应用必需的异步检查而无法同步运行,因此不返回成功。 成功并不表示挂起的验证或安排以后的异步调用。
不要通过阻止异步工作Task<TResult>.ResultTask.Wait()GetAwaiter().GetResult()或实现此方法。 将异步操作包装在内 Task.Run 不会使阻塞等待适当。