Я хочу установить атрибут для открытого свойства в .NET, однако у меня нет доступа к самому явному свойству, так как это был код, сгенерированный в другом файле.Связанный атрибут с генерируемым кодом в .net
У меня есть это поле:
public virtual string Name { get; set; }
Я желаю, чтобы установить это:
[ValidateNonEmpty("Name is required", ExecutionOrder = 1)]
public virtual string Name { get; set; }
Мой класс помечен как частичный, но вы не можете иметь частичные свойства. Я думал, что я что-то сделал с классом MetadataType, который является новой функцией Dynamic Data и DataAnnotations, но, увы, я чувствую, что он может использоваться только с динамическими данными, это правда?
Цитирование: http://blogs.oosterkamp.nl/blogs/jowen/archive/2008/10/16/metadatatype-attribute.aspx http://blogs.msdn.com/davidebb/archive/2008/06/16/dynamic-data-and-the-associated-metadata-class.aspx
Есть ли способ, я могу установить это атрибуты (даже через web.config!), Не касаясь кода, сгенерированного класса?
Спасибо заранее, Graham
Благодаря Марк, я думал, что это может быть так. Мне удалось выполнить итерацию свойств моего объявленного класса «MetadataType», в тот момент, когда я хотел узнать об атрибутах, и просто сопоставляю имя свойства «meta» с реальным свойством. – GONeale
Это не то же самое, что я могу понять, какие истинные атрибуты я понимаю, но для того, что мне нужно, похоже, что это послужит цели в этом случае. Это здорово. – GONeale
Надеюсь, это имеет смысл. Теперь я могу увидеть, был ли объявлен и действителен ли атрибут проверки. Теперь я просто надеюсь, что мне не нужно накладных расходов, используя класс атрибутов «MetadataType», вместо того, чтобы делать свой собственный, который просто говорит ему, в какой класс искать свойства. – GONeale