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

本文关键字:方法 是什么 最佳 调用 记录 | 更新日期: 2023-09-27 18:36:56

我需要在我的应用程序中记录每个方法调用。我不想在业务层的每个方法中重复代码

我一直在研究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呼叫