Использование OnMethodBoundaryAspect в нескольких проектах

У меня проблема с OnMethodBoundaryAspect, используемым разными проектами. В частности, у меня есть - корневой веб-сайт, который является MVC - дочерний веб-сайт в ASP.NET - уровни доступа к бизнесу и данным, вызываемые как MVC, так и ASP.NET

Я реализовал свой собственный класс трассировки VerboseTracing : OnMethodBoundaryAspect в отдельной автономной DLL для ведения журнала.

Я добавил атрибут на уровне сборки как в MVC, так и в проект ASP.NET.

Я вижу, что трассировка выводится только для методов в проекте MVC. Все проекты ссылаются на библиотеку DLL ведения журнала, как указано в Использование PostSharp OnExceptionAspect в нескольких проектах.

Любая помощь будет оценена по достоинству, так как мне ДЕЙСТВИТЕЛЬНО ДЕЙСТВИТЕЛЬНО нужна регистрация для работы в проектах, отличных от MVC.

Я присоединяю класс VerboseTracing. Спасибо


person maurocam    schedule 18.12.2013    source источник
comment
У вас установлен пакет PostSharp NuGet для вашего проекта ASP.NET?   -  person AlexD    schedule 19.12.2013


Ответы (2)


Проверьте параметр атрибута AttributeTargetAssemblies.

Вот как я смог использовать аспекты в нескольких проектах. Единственная разница в том, что я использую проект, а не прямую ссылку сборки на код аспекта.

Я добавляю строку ниже (с правильной сборкой и пространством имен) для каждой другой сборки\пространства имен, к которым мне нужно добавить аспекты, которые использует код моего веб-проекта.

[сборка: ProfileAspect (AttributeTargetAssemblies = "BusinessLogic.Assembly.Name", AttributeTargetTypes = "BusinessLogic.Assembly.Namspeace.*")]

person Mikee    schedule 12.03.2014

Я думаю, что AlexD может что-то понять. Вы должны включить свою библиотеку DLL для ведения журнала и любые зависимости, которые проект ведения журнала требует для запуска внутри вашего проекта ASP.NET. Поэтому я бы предположил, что проект ведения журнала зависит от PostSharp, поэтому PostSharp также должен быть установлен в проекте ASP.NET.

person cjablonski76    schedule 03.04.2014