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

C# 记录方法调用的最佳方法是什么?,c#,logging,aop,C#,Logging,Aop,我需要在应用程序中记录每个方法调用。 我不想在业务层的每个方法中重复代码 我一直在研究AOP方法,这似乎是目前最好的选择,但我不知道如何使用这种方法 任何建议或链接文章或例子将不胜感激 您可以使用APO基础设施,并且您在该链接上有一个很好的使用方法示例 如果您也需要任何日志基础设施,您可以使用 从上面的链接中,您可以看到日志属性示例,您也可以修改该示例以使用日志基础结构: [Serializable] public class LogAspect : OnMethodBoundaryAspect

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

我一直在研究AOP方法,这似乎是目前最好的选择,但我不知道如何使用这种方法

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

您可以使用APO基础设施,并且您在该链接上有一个很好的使用方法示例

如果您也需要任何日志基础设施,您可以使用

从上面的链接中,您可以看到日志属性示例,您也可以修改该示例以使用日志基础结构:

[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调用

你可以使用它,这是一个APO基础设施,你在这个链接上有一个很好的例子来说明如何使用它

如果您也需要任何日志基础设施,您可以使用

从上面的链接中,您可以看到日志属性示例,您也可以修改该示例以使用日志基础结构:

[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
call

谢谢eyossi。我现在就试试,谢谢你。我现在就去试试