什么是记录方法调用的最佳方式?

问题描述:

我需要在我的应用程序中记录每个方法调用。 我不想在业务层的每种方法中重复代码什么是记录方法调用的最佳方式?

我一直在寻找AOP方法,现在似乎是最好的选择,但我不知道如何使用此方法。

任何建议或链接的文章或例子,将不胜感激。

您可以使用PostSharp这是一个APO基础结构,并且您在该链接上有一个很好的示例来说明如何使用它。

如果您还需要任何日志记录基础结构,您可以使用log4net。使用它在你的代码

[Serializable] 
public class LogAspect : OnMethodBoundaryAspect 
{ 
    public override void OnEntry(MethodExecutionArgs args) 
    { 
     Console.WriteLine(Environment.NewLine); 

     Console.WriteLine("Entering [ {0} ] ...", args.Method); 

     base.OnEntry(args); 
    } 

    public override void OnExit(MethodExecutionArgs args) 
    { 
     Console.WriteLine("Leaving [ {0} ] ...", args.Method); 

     base.OnExit(args); 
    } 
} 

从上面的链接,你可以看到日志属性的例子,你可以修改使用日志基础设施,以及

[LogAspect] 
public void SomeMethod() 
{ 
} 

这将登录SomeMethod致电

+0

谢谢你的眼睛。我现在会试试 – Yugz

+0

这正是我所需要的....谢谢 – Yugz