2013-02-12 74 views
0

我正在用C#編寫一個ASP.NET Web服務。在昨天之前,如果我想調試它,我只需按F5鍵,ASP.NET開發服務器就會開始託管我的服務。斷點將被啓用,並將工作。最近這個功能消失了。現在,當我開始調試時,開發服務器已啓動,但舊版本的Web服務已託管,並且斷點不起作用。我收到警告,說明版本不匹配。VS2008調試舊的ASP.NET Web服務

如果我重建所有內容或更改程序集版本,甚至更改DLL的文件名,它都不起作用。 如果我刪除整個臨時文件夾%TEMP%\Temporary ASP.NET Files,這並沒有幫助。舊的Web服務將從誰知道哪裏被拔出,並再次存儲在臨時文件夾中。

昨天之前的主要變化是我安裝了IIS。那裏安裝的Web服務按預期工作,但我也需要調試它。我認爲問題在於我安裝了Web服務(使用vdproj),所以我卸載了它,但這也沒有幫助。

如何防止系統緩存舊版本的Web服務。這個舊版本在哪裏存儲?

回答

2

檢查ASP.NET項目的Web設置。要重新使用ASP.NET Development Server進行F5調試,請確保在「服務器」標題下選擇了「使用Visual Studio Development Server」單選按鈕。我還指定了一個特定的端口,因此我的解決方案中的其他項目可以一致地引用它(在我的情況下,我正在處理Web服務)。您很可能會找到選中「用戶本地IIS Web服務器」單選按鈕。

希望有所幫助。

編輯:這裏的問題不是關於IIS,而是關於更改Web服務的目標生成輸出文件夾。它必須是bin\,或者開發服務器找不到它。重建沒有幫助,因爲它會改變新文件夾中的dll文件,但舊文件在bin文件夾中不會受到干擾。

+0

不,那不是。調試設置沒有改變。 Development Server是正在運行的,但它託管舊版本的Web服務。還有其他問題。 – Dialecticus 2013-02-12 12:43:20

+0

您是否有在IIS中定義的站點使用與開發服務器試圖使用的相同的輸出文件夾(即bin \ Debug)? – 2013-02-12 13:11:43

+0

網站從IIS卸載。當我刪除'Temporary ASP.NET Files'文件夾時,我的web服務無法在C:\ disk上找到(它可以在D:\項目所在的位置)。所以我只會重複一遍:**任何地方都沒有舊文件**。當我開始調試時,會再次創建臨時文件夾,並在那裏找到舊版本的Web服務。憑空創造出來的。 – Dialecticus 2013-02-12 13:34:07