2012-06-13 132 views
1

我需要在我的應用程序中記錄每個方法調用。 我不想在業務層的每種方法中重複代碼什麼是記錄方法調用的最佳方式?

我一直在尋找AOP方法,現在似乎是最好的選擇,但我不知道如何使用此方法。

任何建議或鏈接的文章或例子,將不勝感激。

回答

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致電

+0

謝謝你的眼睛。我現在會試試 – Yugz

+0

這正是我所需要的....謝謝 – Yugz

相關問題