Аспектно-ориентированное ведение журнала с Unity\T4\ что-нибудь еще
В моем приложении у нас есть трассировщик. У нас есть лог-операторы, добавленные в начале и в конце большинства важных методов, отслеживающих имя метода и значения параметров. Теперь эти операторы трассировки раздувают код, и читать их немного сложно.
Я обдумываю, как я могу отделить этот аспект кода от моей бизнес-логики.
Сегодня я читал о структуре перехвата Unity. У меня была мимолетная мысль, можно ли перехватить вызовы моего метода с помощью стандартного регистратора и записать имя метода и значения параметров. Я не уверен, что можно читать параметры метода, используя отражение. Может ли Unity использоваться таким образом?
Другая идея состояла в том, чтобы запустить механизм генерации кода T4 для генерации операторов регистрации в начале и в конце всех методов, украшенных определенным атрибутом. Поскольку я очень мало знаю о Т4, кто-нибудь знает, можно ли это сделать?
Есть ли другие способы отделить код регистрации от моей бизнес-логики?
Ура, Unmesh
2 ответа
Используйте PostSharp.
Они также перечисляют много альтернативных http://www.sharpcrafters.com/postsharp/alternatives
Да, вы можете использовать Unity, но вы должны использовать Unity "Interception extension". хорошая статья здесь