AsyncValidationAttribute.IsValidAsync 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
在子类中重写此方法以实现异步验证逻辑。
protected:
abstract System::Threading::Tasks::Task<System::ComponentModel::DataAnnotations::ValidationResult ^> ^ IsValidAsync(System::Object ^ value, System::ComponentModel::DataAnnotations::ValidationContext ^ validationContext, System::Threading::CancellationToken cancellationToken);
protected abstract System.Threading.Tasks.Task<System.ComponentModel.DataAnnotations.ValidationResult?> IsValidAsync(object? value, System.ComponentModel.DataAnnotations.ValidationContext validationContext, System.Threading.CancellationToken cancellationToken);
abstract member IsValidAsync : obj * System.ComponentModel.DataAnnotations.ValidationContext * System.Threading.CancellationToken -> System.Threading.Tasks.Task<System.ComponentModel.DataAnnotations.ValidationResult>
Protected MustOverride Function IsValidAsync (value As Object, validationContext As ValidationContext, cancellationToken As CancellationToken) As Task(Of ValidationResult)
参数
- value
- Object
要验证的值。
- validationContext
- ValidationContext
提供 ValidationContext 有关验证操作的上下文的实例,例如要验证的对象和成员。 提供对使用
- cancellationToken
- CancellationToken
等待任务完成时观察的 A CancellationToken 。
返回
表示 Task<TResult> 异步验证操作。
验证有效时,结果为 Success.
验证无效时,结果为 .ValidationResult
注解
此方法必须执行所有适用的检查,包括可以同步运行的检查。 在此方法之前,不会自动调用同步 IsValid(Object, ValidationContext) 实现。 在需要时通过帮助程序共享常见检查。
实现必须在请求取消时立即观察提供的 cancellationToken 和停止工作。 验证基础结构可能会在验证失败后取消此令牌,以停止同级验证程序,并在返回之前等待所有启动的验证任务。 忽略取消的实现可能会延迟失败和短路。