C# , Атрибуты поля
Пытаюсь разобраться с атрибутами в C#. Как применить атрибут к полю класса?
Пишу строку [мой атрибут] (у которого AttributeTargets.All) над полем.
При инициализации класса , который содержит это поле, ничего не происходит(а должен вызываться конструктор класса атрибута , насколько я понимаю).
К вопросу об атрибутах. Как иницилизировать поле с помощью атрибута(имеетя в виду что нибудь типо метода field.SetVelue)?
Может что не понятно объяснаяю, только начинаю разбираться с этим вопросом , а в msdn и других ресурсах нет необходимой информации.:confused:
Цитата: watson
Всем привет.
При инициализации класса , который содержит это поле, ничего не происходит(а должен вызываться конструктор класса атрибута , насколько я понимаю).
При инициализации класса , который содержит это поле, ничего не происходит(а должен вызываться конструктор класса атрибута , насколько я понимаю).
Вы неправильно понимаете суть атрибутов.
Атрибут - просто информация. Иногда эта информация используется при генерации кода, иногда она используется иначе, но всегда посредством рефлексии. Сам по себе атрибут "не работает", это просто маркер.
Возможно, вам нужен PostSharp.Laos - АОП-система для .NET, построенная на атрибутах.
Цитата: Der Meister
Вы неправильно понимаете суть атрибутов.
Тоже так подумал, думаю ему нужны свойства в C#