我通過演練準備中引用一個WCF TCP服務「如何:使用NetTcpBinding的使用Windows身份驗證和交通運輸安全在WCF從Windows窗體調用」從相同的解決方案
http://msdn.microsoft.com/en-us/library/ff647180.aspx
當我到「步驟7:創建測試客戶端應用程序」和子步驟5:「5.在添加服務引用對話框中,將服務URI:設置爲net.tcp:// localhost:8523/WCFTestService,然後單擊開始」
我得到「無法識別URI前綴,元數據包含無法解析的引用」。
就好像「添加服務引用」不能識別「net.tcp」綁定。
我在使用Visual Studio 2012的Windows 7 x64上,我的項目針對x86和Framework 4.5。
我發現這個線程
An error in the MSDN walk-through - "How to: Host WCF in a Windows Service Using TCP"
但他們沒有一個問題,當客戶端在同一個解決方案。我是。
服務配置:
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior name="Publisher.MyServiceBehavior">
<serviceMetadata httpGetEnabled="false" httpsGetEnabled="false" />
<serviceDebug includeExceptionDetailInFaults="false" />
</behavior>
</serviceBehaviors>
</behaviors>
<services>
<service name="POC_WcfTcpSubscribePublishService.Publisher">
<endpoint address="" binding="netTcpBinding" bindingConfiguration=""
name="NetTcpBindingEndpoint" contract="POC_WcfTcpSubscribePublishService.IPublisher">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
<endpoint address="mex" binding="mexTcpBinding" bindingConfiguration=""
name="MexTcpBindingEndpoint" contract="IMetadataExchange" />
<host>
<baseAddresses>
<add baseAddress="net.tcp://localhost:8523/WcfTcpSubscribePublish" />
</baseAddresses>
</host>
</service>
</services>
</system.serviceModel>
任何指針是歡迎的。
您試圖添加引用的服務是否正在運行?這是一個要求,我相信 - 您可以從上下文菜單單獨運行服務項目。 – 2013-02-26 21:21:06
對不起,遲到的迴應。這是問題。我原以爲我正在運行這項服務,但是當我開始使用時,它因爲一個不同的原因而立即關閉。現在我可以將服務引用添加到客戶端項目。很有趣,但發現仍然不起作用。 – dtaylor 2013-02-28 13:35:21
如果您將此回覆添加爲答案,我會將其標記爲已回答。 – dtaylor 2013-02-28 13:35:57