【发布时间】:2011-02-02 06:19:40
【问题描述】:
我们有一个项目,我们使用 PostSharp 来启用日志记录。效果很好。但是,有一些方法在非常紧凑的循环中运行,其中日志记录的开销确实增加了相当大的数量。我正在尝试找出将它们从日志记录代码中排除的最佳方法。
根据我的阅读,这种方法应该有效
AssemblyInfo.cs
// turn on logging for all methods in all classes
[assembly: Log(LogType.Debug)]
Code.cs
// exclude this specific method
[Log(AttributeExclude=true)]
private void SomeMethod(...)
但是,当我这样做并使用分析器运行它时,我仍然看到正在 SomeMethod() 上执行的日志代码。根据 SO 和 PostSharp 论坛上的帖子,我尝试了许多不同的迭代,我总是得到相同的结果。
感觉这应该很简单,我只是错过了一些明显的东西。
【问题讨论】:
-
您建议的解决方案应该可行。您是否使用反射器查看了 SomeMethod 以查看代码中的内容?