在多个项目中使用OnMethodBoundaryAspect

时间:2013-12-18 12:55:30

标签: postsharp

我遇到了不同项目使用的OnMethodBoundaryAspect问题。特别是我有 - root网站是MVC - ASP.NET中的子网站 - 商业&由MVC和ASP.NET调用的数据访问层

我在一个单独的独立日志记录DLL中实现了我自己的跟踪类VerboseTracing:OnMethodBoundaryAspect。

我在MVC和ASP.NET项目的程序集级别添加了该属性  

我所看到的是,跟踪仅输出MVC项目中的方法。所有项目都引用了日志记录DLL,如Using PostSharp OnExceptionAspect across mulit projects所示。

任何帮助都会受到赞赏,因为我真的非常需要在非MVC项目中使用日志记录。

我正在附加VerboseTracing类。 感谢

2 个答案:

答案 0 :(得分:1)

签出 AttributeTargetAssemblies 属性参数。

以下是我如何在多个项目中使用方面。唯一的区别是我使用项目而不是直接汇编引用方面代码。

我为我需要添加方面的每个其他程序集\命名空间添加以下行(带有正确的程序集和命名空间),这是我的Web项目代码所使用的。

  

[assembly:ProfileAspect(AttributeTargetAssemblies =   " BusinessLogic.Assembly.Name",AttributeTargetTypes =   " BusinessLogic.Assembly.Namspeace *&#34)]

答案 1 :(得分:0)

我认为AlexD可能会出现问题。您应该包括日志记录DLL以及日志记录项目在ASP.NET项目中运行所需的所有依赖项。所以我认为日志记录项目依赖于PostSharp,因此PostSharp也应该安装到ASP.NET项目中。