検証が必要な多くの文字列プロパティを持つクラスがあります。私は Validation Application Block を使用しています。これは、属性を使用してこの種のニーズを解決するのが大好きだからです。すべてうまく機能しますが、マネージャーは、メッセージ テンプレート トークンとリソース ファイルの実装に必要なコードの量を好みません。
例えば:
[StringLengthValidator(100,
MessageTemplateResourceName = "InvalidStringLengthMessage",
MessageTemplateResourceType = typeof(Xltech.Common.Resources.XLStrings))]
public string FirstName {get; set;}
問題は、100 (文字列の最大長) の後のすべての引数が、このクラスにあるすべての StringLengthValidator (実際には、ソリューション全体) で同じであることです。
少なくともバリデーターに共通の MessageTemplateResourceType を与えて、関連するコピー/貼り付けを減らす方法はありますか?