2009-05-18 25 views
3

我遇到了我編寫的WCF應用程序的問題。WCF遠程使用net.pipe綁定的問題

當客戶端和服務器在同一臺機器上運行良好,但是當我嘗試運行它與客戶端和服務器在兩臺獨立的機器上(因爲它應該運行),我得到以下異常:

System.ServiceModel.EndpointNotFoundException:在net.pipe://vm101.lab.foo.co.uk/VDNService上沒有可以接受消息的端點。這通常是由不正確的地址或SOAP操作引起的。有關更多詳細信息,請參閱InnerException(如果存在)。
System.IO.PipeException:在本地計算機上找不到管道端點'net.pipe://vm101.lab.foo.co.uk/VDNService'。

我不明白的是異常的第二行,它無法在我的本地機器上找到終點。終點是在另一臺機器上,而不是我的本地機器不是嗎?

我正在使用網絡命名管道綁定(NetNamedPipeBinding)而不是HTTP。

而WCF代碼是手動編碼而不是生成的(因爲我的理解是規範,直到我編寫應用程序後才知道)。

任何幫助,將不勝感激。

回答

7

「net.pipe」處理當地的交通工具。您需要使用不同的綁定才能跨機器通話。你可能想要使用netTcp。

http://msdn.microsoft.com/en-us/library/ms730879.aspx

+0

可以net tcp做回調嗎?我通過Http使用net pipe的原因是它允許回調。 – 2009-05-18 10:23:41