2011-08-01 55 views
5

我有一個Postsharp問題。postsharp異常爲空

我有這樣的:

[Serializable] 
public class MethodConnectionTracking: OnExceptionAspect 
{ 
    public override void OnException(MethodExecutionArgs args) 
     { 
      base.OnException(args); 
     } 
} 

,我用這樣的。在assemblyInfo.cs中:

[assembly: MethodConnectionTracking] 

因此,當程序集中發生異常時,它會執行OnException方法。但是,當我調試方法,我看args(類型:MethodExecutionArgs)每個屬性都有一個空值。 args.Exception爲null。而我需要的例外類型..

任何人都知道我該如何解決這個問題?

在此先感謝

回答

4

的答案,如果因爲PostSharp看到它們,讓它們實現了優化,以不做這些屬性任何你不使用任何這些屬性。這就是爲什麼當你調試時它們是空的。改變你的方面匹配以下OCDE然後嘗試再次調試

[Serializable] 
public class MethodConnectionTracking: OnExceptionAspect 
{ 
public override void OnException(MethodExecutionArgs args)   
{    
Exception e = args.Exception;  
} 
} 

,你可以清楚地看到爲什麼在這裏:http://programmersunlimited.wordpress.com/2011/08/01/postsharp-why-are-my-arguments-null/

+0

謝謝!很簡單! –