Language

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を実装する場合、非同期 Validator API ( TryValidateObjectAsync(Object, ValidationContext, ICollection<ValidationResult>, CancellationToken) など) は ValidateAsync(ValidationContext, CancellationToken)のみを呼び出します。非同期パスでは Validate(ValidationContext) は呼び出されません。 同期 Validator API は引き続き Validate(ValidationContext)を呼び出します。

該当する規則を評価できる Validate(ValidationContext) の同期実装を提供し、オブジェクトを拒否する規則の検証エラーを返します。 必要なルールが適用されても同期的に評価できない場合は、呼び出し元を非同期検証エントリ ポイントに誘導するメッセージで InvalidOperationException をスローします。

ルールを評価せずに検証エラーを返さないのは、ルールが適用されない場合にのみ適しています。 必要な非同期チェックが適用されるが同期的に実行できないため、空の結果を返さないでください。 空の結果は、保留中の検証を示したり、後で非同期呼び出しを配置したりすることはありません。

非同期作業または非同期列挙結果をブロックして Validate(ValidationContext) を実装しないでください。

メソッド

Name 説明
Validate(ValidationContext)

指定したオブジェクトが有効かどうかを判断します。

(継承元 IValidatableObject)
ValidateAsync(ValidationContext, CancellationToken)

指定したオブジェクトが非同期的に有効かどうかを判断し、各チェックが完了すると検証結果が生成されます。

適用対象