5

私は次のことをしようとしています:

 [Display(Name = Resources.LcmsBs.Models.UserName)]
 [ToolTip(Resources.LcmsBs.ToolTips.UserName)]
 public string UserName { get; set; }

次のコンパイルエラーが発生します:

属性の引数は、定数式、typeof式、または属性パラメータータイプの配列作成式である必要があります。

コード内でハードコードされた定数を回避するためのベストプラクティスは何ですか?リソースから属性値を設定することは可能ですか?

4

2 に答える 2

10

少し違う質問がありますが、次の答えがあなたの質問に当てはまる可能性があります

DataAnnotationsとResourcesがうまく機能しない

次のようなもの

[Display(ResourceType = typeof(Resources.LcmsBs.Models), Name = "UserName")]
于 2012-11-13T10:43:49.137 に答える
4

c#バージョン6.0以降を使用している場合、最善の方法は次のとおりです。

[Display(Name = nameof(Resources.LcmsBs.Models.UserName), ResourceType = typeof(Resources.LcmsBs.Models))]
于 2017-08-07T09:02:56.420 に答える