Когда я использую DisplayAttribute в моделях ASP.NET MVC 3, это быстро становится трудной задачей, потому что мы должны либо жестко закодировать строку, либо ссылаться на строку из некоторого статического класса, который содержит const strings
(что я и имею сейчас) , увидеть ниже). Но даже это слишком много для меня.
Я бы хотел придумать атрибут, который бы назывался чем-то вроде [SimpleDisplay], и он бы неявно создавал строку для ресурсов, посмотрев на
- имя класса,
- имя свойства, к которому прикреплен атрибут.
Возможно ли это?
как то так
public class Product {
[SimpleDisplay] // it will take Product and Name and do something like this Product_Name
public string Name { get; set; }
}
Это то, от чего я хочу избавиться, если возможно:
[Display(ResourceType = typeof(Resources.Localize), Name = ResourceStrings.product_prettyid)]
public virtual int PrettyId
{
get;
set;
}
[Display(ResourceType = typeof(Resources.Localize), Name = ResourceStrings.product_name)]
public virtual string Title
{
get;
set;
}
Теперь я знаю, что невозможно наследовать атрибут DisplayAttribute, потому что он запечатан. Какие еще варианты у меня есть? Это вообще имеет смысл?