カスタム リソース プロバイダーを使用して、データベースからリソース文字列を取得しています。これは、リソース タイプを文字列として定義できる ASP.NET で問題なく動作します。MVC 3 のモデル プロパティのメタデータ属性 ([Range]、[Display]、[Required] など) には、パラメーターとしてリソースの型が必要です。ここで、ResourceType は、.resx ファイルの生成された分離コード クラスの型です。 .
[Display(Name = "Phone", ResourceType = typeof(MyResources))]
public string Phone { get; set; }
私は .resx ファイルを持っていないので、そのようなクラスは存在しません。カスタム リソース プロバイダーでモデル属性を使用するにはどうすればよいですか?
私はこのようなものが欲しいです:
[Display(Name = "Telefon", ResourceTypeName = "MyResources")]
public string Phone { get; set; }
System.ComponentModel の DisplayNameAttribute には、この目的のためにオーバーライド可能な DisplayName プロパティがありましたが、DisplayAttribute クラスは封印されています。検証属性については、対応するクラスが存在しません。