close

當程式遇到Exception時,雖然從Exception物件可以取得堆疊資訊,但由於是字串屬性,所以會一次取得一大串的資訊,對於記錄上有點不方便。幸好.NET提供StackFrame類別,讓程式可以很彈性的處理Exception資訊。

StackFrame物件本身包含數個StackFrame物件,這個物件裡的資訊才是真正要記錄的,下列程式碼是將StackTrace物件的StackFrame資料取出並列印出來,注意迴圈裡跳過元素0,那是因為第0個元素所記錄的是目前所執行的函式,這個並不需要記錄。

2012-03-29_211554

 

下列是測試程式碼,透過前面所撰寫的程式碼,在記錄Exception資訊時只要呼叫一行就好。

2012-03-29_211918

 

執行結果。

2012-03-29_211930

 

參考資料

StackTrace 類別 (System.Diagnostics)

StackFrame 類別 (System.Diagnostics)

arrow
arrow
    全站熱搜

    卑微研究生 發表在 痞客邦 留言(0) 人氣()