将PostSharp Aspect添加到System.IO命名空间?

时间:2017-01-07 20:16:48

标签: postsharp

我希望将我的方面添加到system.io命名空间,我已经搜索了许多没有做到这一点的解决方案但基本上我想处理异常并从System.IO命名空间做一些File类的日志记录。就像将[MyAspect]添加到班级顶部一样..

有办法吗?

1 个答案:

答案 0 :(得分:0)

让我们考虑这样的方面:

[PSerializable]
public class MyAspect : OnMethodBoundaryAspect
{
    public override void OnEntry(MethodExecutionArgs args)
    {
    }
}

通过应用MyAspect

,您可以将此方面应用于从项目调用的任何第3个程序集
[assembly: MyAspect(AttributeTargetAssemblies = "mscorlib", AttributeTargetTypes = "System.IO.*")]

当您指定此程序集属性时,PostSharp会将项目中的所有调用装饰到System.IO程序集中mscorlib MyAspect程序集中$this->upload->do_upload('filefoto')的方法。