我需要记录我的应用程序中的每个方法调用。 我不想在业务层的每个方法中重复代码
我一直在研究AOP方法,它现在似乎是最好的选择,但我不知道如何使用这种方法。
任何建议或链接文章或示例将不胜感激。
答案 0 :(得分:1)
你可以使用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
来电