2011-08-24 57 views
5

我是託管Web應用程序和Web服務的新手。雖然我成功地託管了一個Web應用程序,但是我試圖通過net.tcp綁定託管一個WCF服務後,遇到了阻礙。通過IIS管理器7.5與net.tcp綁定的主機WCF服務

我的場景如下,我有一個託管的Web應用程序,需要通過IIS 7.5與net.tcp綁定與託管的WCF服務進行通信。如前所述,Web應用程序託管得很好,我可以瀏覽網站。但是,Web應用程序向WCF服務發起服務調用,並且我收到'TCP error code 10061'消息,我認爲這是由於託管的WCF服務未運行。我認爲這沒有運行,因爲我試圖'telnet localhost 808'來查看WCF服務是否正在運行,而不是。我已經瀏覽了很多在線指南,但我仍然沒有運氣。我相信我可能會做一些根本性的錯誤,因爲我是一個小菜鳥和所有人。我能夠通過VS2010託管服務並運行Web應用程序,它工作正常,所以我相信我的綁定是正確的。我還在IIS管理器的兩個網站上啓用了tcp協議。

所以我想我的真正的問題是什麼IIS管理器步驟需要用net.tcp綁定託管一個WCF服務?在我看來,通過簡單地創建一個網站來託管一個net.tcp服務是不可能的,因爲IIS管理器想要綁定到一個http端口。

+0

你有沒有想過這個?我創建了自己的問題版本,但似乎我可能會遇到與您一樣的問題。 http://stackoverflow.com/questions/16628382/setting-up-wcf-tcp-service-in-a-web-application –

回答

4

這裏有一些事情要檢查:

  • 確保的net.tcp偵聽器適配器Windows服務運行
  • 確保netTcp被列爲爲您的網站啓用的協議(在IIS管理器,進入高級設置爲您的站點)
  • 確保netTcp列出爲託管您的服務的應用程序(目錄)的啓用協議(在IIS管理器中,轉至託管您的服務的目錄並選擇高級設置)
  • 確保您的IIS站點有一個bindi ng爲net.tcp,並列出正確的端口號。

編輯:
啓用/請參見下面的MSDN頁面使用非HTTP綁定在.NET 4.0 + IIS 7/7.5:

Configuring the Windows Process Activation Service for Use with Windows Communication Foundation

+2

另外,在Microsoft.NET Framework 3.5下打開Windows功能(安裝Windows組件)。 1 - Windows Communication Foundation非HTTP激活 –

+0

感謝您的快速響應。 – David

+0

感謝您的快速響應。 Net.TcpListenerAdapter服務正在運行。 netTCP在Web應用程序和Web服務上也是可用的並且可以使用的協議。 808:*是一個netTCP協議。 WCF非Http激活也被安裝。我還將我的WCF服務添加到默認網站,並將netTCP端口808綁定到此處。另一個問題,我的WCF服務如何綁定到端口808?它會通過我的web.config文件嗎?另外WCF服務如何開始?在默認網站下,IIS管理器狀態僅顯示netTCP綁定的「未知」。再次感謝。 – David

1

而且我發現,對我來說沒無法使用本地主機...您應該使用127.0.0.1或您的計算機的名稱。