我有一個解決方案WCFSampleSolution,它具有我所有的項目 - Web服務,客戶端和網站。該結構是這樣的:在本地IIS中託管的調試WCF服務不起作用
- WCFSampleSolution
- C:\ WCFSample \網站
- WCFService
- WCFWebClient
我創建WCFService項目爲我服務。它包含IService1.cs和Service1.cs。然後我在IIS中託管服務。我通過創建一個網站並將.svc和web.config文件添加到網站項目中來實現此目的。然後在IIS中發佈它。當我運行http:\ MyMachineName \ Website \ Service.svc時,它顯示服務描述。然後我創建了調用web服務的Web客戶端。我使用服務引用來添加服務。它調用Service1的方法。它工作正常。但我不能調試這個程序/設置。我驗證了WCFWebClient項目和Website項目中的配置文件,並且它們具有適當的調試設置。
<compilation debug="true">
我把斷點,但控制永遠不會去我的seb服務。我也嘗試過附加程序,但它也不起作用。但我能夠調試我的其他WCF項目之一。設置有點不同。在該項目中,我複製了.svc文件並在我的Web客戶端中進行了配置,調試工作正常。
請幫助!
Pradeep,非常感謝回覆。我不知道如何附加到w3wp?我所做的是,打開VS 2008,然後選擇Tools-> Attach to Process並選擇aspnet_wp.exe。我確信我做得不對,因爲在我附加之後,我無法對VS做任何事情。你能指導我怎麼做嗎?還有最後一行是什麼意思? – 2010-10-06 20:27:16
aspnet_wp.exe是附加的正確過程。我想你是在Windows XP機器上。你正在採取正確的步驟。我已經看到即使服務託管在IIS中的行爲,VS啓動其構建的Web服務器「WebDev.WebServer40.exe」(我在VS 2010中看到這個名稱)。您還需要將其附加到aspnet_wp.exe的一側。你還可以分享你的代碼庫,以便我也可以看看。 – Pradeep 2010-10-07 04:37:06
謝謝Pradeep,我無法調試。我在這裏錯過的是,我需要做的工作之一是:我將其放在這裏供其他人使用:1.在調用Web服務方法之前以及服務方法(重要)之前在客戶端放置斷點。 2.運行應用程序。 3.當控制位於客戶端中斷點時,打開Debug-> Attach to Process並選擇aspnet_wp.exe。 4.立即開始調試。瞧! – 2010-10-07 15:36:33