Language

ValidationLocalizationOptions.ErrorMessageKeyProvider プロパティ

定義

検証属性のエラー メッセージのローカライズ検索キーを決定するデリゲートを取得または設定します。 構成すると、すべての属性に対してデリゲートが呼び出され、 ErrorMessageよりも優先されます。 nullまたは空の文字列を返す場合は、ErrorMessageを参照キーとして直接使用する必要があります。

public:
 property Func<Microsoft::Extensions::Validation::ErrorMessageLocalizationContext, System::String ^> ^ ErrorMessageKeyProvider { Func<Microsoft::Extensions::Validation::ErrorMessageLocalizationContext, System::String ^> ^ get(); void set(Func<Microsoft::Extensions::Validation::ErrorMessageLocalizationContext, System::String ^> ^ value); };
public Func<Microsoft.Extensions.Validation.ErrorMessageLocalizationContext,string?>? ErrorMessageKeyProvider { get; set; }
member this.ErrorMessageKeyProvider : Func<Microsoft.Extensions.Validation.ErrorMessageLocalizationContext, string> with get, set
Public Property ErrorMessageKeyProvider As Func(Of ErrorMessageLocalizationContext, String)

プロパティ値

Func<Microsoft.Extensions.Validation.ErrorMessageLocalizationContext,String>

注釈

null (既定値) の場合、ErrorMessage セットを持つ属性のみがローカライズされます (ErrorMessage値をキーとして使用)。明示的なErrorMessageのない属性は、まったくローカライズされません。

構成すると、デリゲートは次のことができます。

  • 明示的な ErrorMessage を使用せずに属性のフォールバック キーを指定します (規則ベースのキーの選択)。
  • コンテキストからErrorMessageのMicrosoft.Extensions.Validation.ErrorMessageLocalizationContext.Attributeを読み取って、既存のErrorMessageを別の参照キーに変換します。
  • キーとしてnullを使用する既定の動作に遅延するErrorMessageまたは空の文字列を返します。
options.ErrorMessageKeyProvider = context =>
    $"{context.Attribute.GetType().Name}_ValidationError";
// This makes the localizer look up "RequiredAttribute_ValidationError"
// instead of "The {0} field is required."

適用対象