AsyncValidationAttribute.IsValid メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
オーバーロード
| Name | 説明 |
|---|---|
| IsValid(Object) |
AsyncValidationAttribute実装がIsValid(Object, ValidationContext)経由で単一の同期フォールバックを提供するだけで済むように、ValidationContext オーバーロードに委任するIsValid(Object)のシールされたオーバーライド。 |
| IsValid(Object, ValidationContext) |
この属性の同期検証動作を定義します。 |
IsValid(Object)
AsyncValidationAttribute実装がIsValid(Object, ValidationContext)経由で単一の同期フォールバックを提供するだけで済むように、ValidationContext オーバーロードに委任するIsValid(Object)のシールされたオーバーライド。
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)
この属性の同期検証動作を定義します。
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 でラップしても、ブロック待機は適切になりません。