2016-05-04 12 views
2

私は学生で初心者の開発者です。Resources.Messagesでのデータ注釈の使用C#

私は自分の職場のプロジェクトにいるのですが、データアノテーションを検証に使用していますが、動的エラーメッセージを実装するためにResources.Messagesを使用する必要があります。私がやろうとしているものの例をここで行く:このシナリオでは

[Required (ErrorMessage = (string.Format(Messages.MissingParameter, Messages.Ad)))] 
    [Range(0, long.MaxValue)] 
    public long? Ad { get; set; } 

、パラメータが欠落していることは、フォロー文字列「{0}は、パラメータが必要である」とMessages.Adはinternacionalizedフィールドを持つ文字列です。

しかし、これらは使用渡した文字列の問題を考えていない - (>Why can't I use resources as ErrorMessage with DataAnnotations?このRegularExpressionsの例のように)私はデータアノテーションを使用している場合

スヨン、そこErrorResourceを使用してのようないくつかのソリューション、...です最終的な文字列を提供するためのパラメータ(string.formatに示されているように)

私の質問は、複雑な国際化文字列とデータ注釈の使い方です。

答えて

1

属性パラメータとして使用できる特定の値を使用する必要があるため、できません。 MSDN - Attributes Tutorial C#から

  • 単純型(ブール値、バイト、文字、短い、int型、長い、float型、およびダブル)
  • 属性パラメータは、次のタイプの一定の値に制限されています

  • 文字列
  • のSystem.Type
  • 列挙型
  • オブジェクト(への引数オブジェクト型の属性パラメータは、上記のいずれかの型の定数値でなければなりません)。
  • 上記の種類の1次元配列
関連する問題