我使用自定义资源提供程序从数据库中获取资源字符串。这适用于 ASP.NET,我可以将资源类型定义为字符串。MVC 3 中模型属性的元数据属性(如 [Range]、[Display]、[Required] 需要 Resource 的类型作为参数,其中 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 类是密封的。对于验证属性,不存在相应的类。