2010-04-09 144 views
8

我在這裏使用的指令設立的net.tcp WCF服務:http://blogs.msdn.com/swiss_dpe_team/archive/2008/02/08/iis-7-support-for-non-http-protocols.aspxWCF,的net.tcp和ASP.NET開發服務器

步驟之一說要做到以下幾點:「如果你打開IIS7管理控制檯,你會看到我們的IIS7HostedService Web應用程序的高級設置,你會看到在Enabled Protocols部分中只定義了http。你現在必須添加net.tcp(用逗號隔開),這樣我們的服務將會也能夠響應TCP請求。「

這很好,但是如果我想使用Cassini/VS2010 ASP.NET開發服務器進行調試(擊中F5或cntrl-F5),該怎麼辦?我認爲沒有辦法更改該IIS中的設置。或者在那裏?其他程序員是否真的太棒了,以至於他們不需要經過調試器?或者他們使用wsHttpBinding?

回答

6

你不能在cassini中使用net.tcp,所以你不能使它工作。你必須在你的機器上使用IIS。

http://tomasz.janczuk.org/2009/11/pubsub-sample-with-wcf-nettcp-protocol.html

http://social.msdn.microsoft.com/Forums/en-US/wcf/thread/6828959c-43c1-4452-8070-01f14df1c1d2

調試它在IIS7,您可以附加到一個進程在Visual Studio和調試器附加到W3P.exe。

+1

無賴 - 我很懶,不喜歡做額外的工作:-)。 感謝您的聯繫。 – bryanjonker 2010-04-09 13:11:48

2

您可以使用自託管服務來完成此操作。如果您在庫中構建大部分服務,那麼構建兩個版本非常簡單 - 一個是自託管的(用於調試),另一個是使用WAS/IIS託管的版本。

+0

這絕對是一個懶惰的開發的選擇。 – 2010-04-12 21:29:45

-1

調試一個WCF服務,你看過使用WcfSvcHost.exe和WcfTestClient.exe嗎?這些都是MS爲VS2010提供的絕佳工具。查看VS2010的安裝位置。我的是C:\ Program Files \ Microsoft Visual Studio 10.0 \ Common7 \ IDE。 WcfSvcHost.exe是宿主服務DLL,另一個是對DLL進行測試調用。每個人都有一個幫助文件。該幫助文件甚至爲您提供了使用VS中的F5調試密鑰啓動它的說明。你可以單獨使用它們。 WcfTestCleint用於與本地或服務器上的服務進行通信。是的,您甚至可以使用非WCF Web服務。你還記得Web服務工作室嗎?這在某些方面更好。我唯一不喜歡的是它不會顯示Web Service Studio那樣的代碼。

- J男人

+0

-1:這並沒有真正回答這個問題。 – 2011-02-18 22:20:00

+0

正確,它不回答卡西尼問題。然而,我提供了另一個選項,可以在沒有Cassini,IIS或編寫自己的託管解決方案的情況下調試他的WCF服務。 – 2012-02-02 16:33:42