2008-09-12 56 views
2

我有一個c#asp.net web應用程序。數據庫層中的斷點不再停止執行,但UI層中的斷點仍然可以正常工作。任何人都可能冒險猜測爲什麼這可能會發生?爲什麼VS2008中的斷點會停止工作?

我已經檢查了所有通常的嫌疑人(調試版本是針對所有項目),並重新編譯的解決方案的所有項目......

回答

0

您是否嘗試過重新編譯之前刪除你的bin目錄?

1

我會確保UI層引用適當的'debug'.dll's。我還考慮在調試時按CTRL + ALT + U(模塊視圖),以查看是否爲BLL和DAL .dll加載了符號。如果沒有,Visual Studio無法找到該文件的.PDB文件。將調試文件(.PDB)與從「模塊」窗口中引用的.dlls位於同一目錄中?

1
  • 將調試器附加到ASP.NET進程並單擊模塊窗口。確保爲要調試的程序集加載調試符號。
  • 確保UI正在引用調試程序集,而不是釋放程序集。
  • 確保.PDB文件位於/ bin/debug /目錄中
  • 確保在連接調試器之前重新生成整個解決方案。
  • 如果數據層處於單獨的解決方案中,請將該項目添加到UI SLN(您不需要添加引用,這些引用應該已經建立,或者代碼不會編譯),以便調試器可以拉起完整的代碼。
1

感謝您的回覆和想法傢伙 - 我已經嘗試過所有這些或他們的變化。

我認爲它必須是一個非常微妙的VS錯誤。一位同事建議我做這個功能,我試圖打破公開(先前「未定義」,因此隱含私人),然後再試一次。我做到了,斷點開始受到打擊。然後,我刪除了公共關鍵字,斷點繼續受到打擊。不知道爲什麼這解決了它,但它確實如此。

感謝您的幫助!

1

一些建議。 第一個是檢查源代碼行中斷點的狀態。這是一個堅實的紅球嗎?如果不是,它通常表示該文件不是用於構建的文件。 其次 - 查看模塊視圖並查看已加載的模塊和符號。你可能會發現這不是你所期望的。

至於爲什麼 - 我不知道!

尼克

0

我有同樣的問題,並一直在想「我怎麼在web.config中變」可能做到這一點?

<location path="." inheritInChildApplications="false"> 

這不允許斷點爲我工作。

相關問題