如何在标有属性的目标上记录方法调用?

是否可以将Loggin行为注入标记的类或/和方法,如下所示:

Log("Method {0} started",GetMethodNameTroughReflection) Call method body Log("Method {0} Finished",GetMethodNameTroughReflection) 

我想创建自己的Attribute类,它将实现方法调用的登录行为。

我想描述app.config文件中的登录行为,可以通过config中的设置禁用它。

怎么做对了? 也许为这样的任务创建了解决方案?

这可以使用面向方面编程(AOP)来完成。 看看PostSharp 。 请在此处查看示例以进行跟踪:

非侵入性跟踪和记录

搜索“面向方面的编程” – 日志记录是一个典型的例子。 例如, 此链接使用PostSharp完成它