2012-01-05 60 views
3

我構建了一個處理錯誤,並返回以下錯誤味精的應用程序:調試C#生產中的應用有/無PDB文件

System.NullReferenceException: 
Object reference not set to an instance of an object. 
    at MyApp.Submit_Click(Object sender,EventArgs e) 

我沒有得到任何堆棧跟蹤,我沒有看到沒有正確引發異常的問題。

我對如何捕捉到這一信息的幾個問題:

  1. 我記錄exception.ToString()通常給我的異常,內部異常,和堆棧跟蹤在我的代碼。我是否需要.pdb文件來獲取堆棧跟蹤,還是隻需要添加行號?
  2. 我有一個與相關的DLL生產.pdb文件,但我相信該pdb文件是從一個較舊的版本。這可能會導致捕獲調試信息的問題,並且比根本沒有.pdb文件更糟?

感謝您的幫助!

+0

發佈代碼MyApp.Submit_Click()。假設你知道這個方法,爲什麼你不能只設置一個斷點並進行調試? – 2012-01-05 01:17:00

回答

3

不,您不需要pdb來查看堆棧跟蹤,但您將需要它來獲取行號。而且,如果您的版本不同步,則最終可能會報告不正確的行號。

你的錯誤信息不會顯示你的堆棧跟蹤,那裏只是沒有太多之一,因爲它是一個按鈕,點擊:

at MyApp.Submit_Click(Object sender,EventArgs e) 
相關問題