0
如何識別線nr。發生異常並在異常處顯示一段代碼?.NET異常處理程序頁面:如何顯示行號異常?
我想實現一個自定義異常處理程序頁面,它將顯示堆棧跟蹤,並且正在尋找最簡單的方法來完成上述操作。儘管大部分信息都可以通過Exception對象獲得,但源代碼信息在此處不可用。
如何識別線nr。發生異常並在異常處顯示一段代碼?.NET異常處理程序頁面:如何顯示行號異常?
我想實現一個自定義異常處理程序頁面,它將顯示堆棧跟蹤,並且正在尋找最簡單的方法來完成上述操作。儘管大部分信息都可以通過Exception對象獲得,但源代碼信息在此處不可用。
您需要使用StackTrace類。
例如:
var st = new StackTrace(exception, true);
var sourceFrame = Enumerable.Range(0, st.FrameCount).FirstOrDefault(i => st.GetFrame(i).GetFileLineNumber() > 0);
此代碼會發現它具有可用的行數的信息,或null
,如果沒有幀的行號的第一幀。
然後,您可以撥打StackFrame
對象的methods以獲取更多信息。請注意,源代碼信息通常只在調試版本中可用。
太棒了!謝謝一堆! – Andy 2010-01-01 15:45:06