IAsyncValidatableObject Интерфейс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет способ асинхронной проверки объекта.
public interface class IAsyncValidatableObject : System::ComponentModel::DataAnnotations::IValidatableObject
public interface IAsyncValidatableObject : System.ComponentModel.DataAnnotations.IValidatableObject
type IAsyncValidatableObject = interface
interface IValidatableObject
Public Interface IAsyncValidatableObject
Implements IValidatableObject
- Реализации
Комментарии
Если объект реализуетIAsyncValidatableObject, асинхронные API (напримерTryValidateObjectAsync(Object, ValidationContext, ICollection<ValidationResult>, CancellationToken), ) вызывают только ValidateAsync(ValidationContext, CancellationToken); Validate(ValidationContext) не вызывается в асинхронном Validator пути. Синхронные Validator API продолжают вызываться Validate(ValidationContext).
Предоставьте синхронную реализацию Validate(ValidationContext) , когда она может оценить применимые правила, возвращая ошибки проверки для правил, отклоняющих объект. Если необходимое правило применяется, но не может быть синхронно оценено, вызов с InvalidOperationException помощью вызывающих сообщений в асинхронную точку входа проверки.
Возврат ошибок проверки без оценки правила подходит только в том случае, если правило не применяется. Не возвращайте пустой результат просто потому, что необходимая асинхронная проверка применяется, но не может выполняться синхронно. Пустой результат не указывает на ожидание проверки или упорядочение последующего асинхронного вызова.
Не реализуйте Validate(ValidationContext) , блокируя асинхронную работу или асинхронно перечисляемые результаты.
Методы
| Имя. | Описание |
|---|---|
| Validate(ValidationContext) |
Определяет, является ли указанный объект допустимым. (Унаследовано от IValidatableObject) |
| ValidateAsync(ValidationContext, CancellationToken) |
Определяет, является ли указанный объект допустимым асинхронно, возвращая результаты проверки по завершении каждой проверки. |