2010-07-28 36 views
8

我正在編寫一個錯誤日誌過程(出於安全原因,我不能使用log4net/elmah等),並且我想知道是否有可能獲得行號發生錯誤的行和/或錯誤發生的過程名稱?
我將最終創建try catch語句塊,所以我希望獲得錯誤處理程序(或導致錯誤的行)和相關過程名稱的行號。在asp.net中獲取一行#和proc的名字

回答

5

趕上(例外五)
{
串errMessage = e.Message
串errTraceDetails = e.StackTrace
}

這應該給你的細節你需要。

+0

哇。它那簡單! – user279521 2010-08-07 17:39:55

4

如果您也部署了.pdb文件,則應該在例外文本中獲取行號。

雖然我建議不要自己寫這個。我在任何地方都使用elmah這種類型的東西。

0

那麼堆棧跟蹤將處於您捕獲的異常,並且將包含引發異常的方法以及調用樹直至該異常的方法。行號取決於調試符號(pdb文件),但是如果它們也被部署到堆棧跟蹤中。

0

嘗試:

string errorMessage = Exception.Message 
string errorDetails = Error.Stacktracer