2014-05-05 42 views
1

我有一個try-catch塊。在catch塊中,我想記錄try塊中發生異常的地方(即linke numnber)。謝謝如何找出在try-block中發生異常的地方

+0

到目前爲止的努力? –

+1

什麼樣的「信息」?無論答案如何,你都無法得到任何有用的東西。如果你覺得你需要區分,那麼你需要不止一個'catch'(並且可能不止一個'try')。 – Jon

+1

您可以閱讀堆棧跟蹤。 –

回答

1

您可以嘗試查看堆棧對象以查看它的位置。它通常給你一個行號(與很多其他的「位」)

我用它來一般,獲取調用方法的一般錯誤處理:

void DoThings(stacktrace se) 
{ 
se.GetFrame(0).GetMethod().ReflectedType.Name 
} 

讓我調用方法的信息。

+0

根據@andgeek,它是您需要的堆棧跟蹤。堆棧跟蹤() –

2

你應該申請try-catch塊到你不知道它會成功與否的代碼(即,你是懷疑有關的代碼)

當try-catch塊被應用在多條線路,並且想知道在哪條線上發生了異常,我認爲你需要用try-catch塊來包圍每一行。

否則異常消息將顯示執行過程中發生的錯誤。