Я использую собственный поставщик ресурсов для получения строк ресурсов из базы данных. Это отлично работает с 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; }
В DisplayNameAttribute из System.ComponentModel для этой цели было переопределяемое свойство DisplayName, но класс DisplayAttribute запечатан. Для атрибутов проверки не существует соответствующих классов.