Локализация ASP.NET MVC 3 с DisplayAttribute и настраиваемым поставщиком ресурсов

Я использую настраиваемый поставщик ресурсов для получения строк ресурсов из базы данных. Это отлично работает с 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 запечатан.Для атрибутов проверки не существует соответствующих классов.

14
задан slfan 8 December 2011 в 15:34
поделиться