Мы находимся в процессе внедрения PostSharp в одном из наших проектов. Пока все отлично работает! Но есть одна вещь, которую нам не удалось решить: как дать совет условно.
Подробнее:
- у нас есть атрибут StopWatchAttribute, который позволяет записывать время, необходимое для запуска методов
- этот атрибут принимает перечисление "LoggingLevel", которое устанавливается в файле конфигурации со значениями, такими как 0, 1, 2 и т. д.
- этот параметр читается в базовом классе BaseService во время выполнения: new BaseService (). CurrentLoggingSettings
- мы попытались настроить конструктор атрибута, например StopWatchAttribute (new BaseService (). CurrentLoggingLevel), но получили ошибку компиляции: аргумент атрибута должен быть выражением константы, выражением typeof или выражением создания массива типа параметра атрибута.
-> резюме: мы бы хотели, чтобы совет вызывался условно, а условие зависит от параметра в конструкторе атрибута.
Возможно ли это сделать?
Спасибо за вашу помощь,
Андраш