2011-03-09 51 views
0

我們正在構建一個啓動/停止其他進程的窗口服務,並且UI和服務之間的通信使用NetNamedPipe。在網絡上使用NetNamedPipe?

每個進程都有一個可以關閉調用的主機(仍然使用NetNamedPipe以避免端口交叉)。

我用它在我的電腦上,當我把它移到服務器上時它不起作用(NetNamedPipe不適用於交叉網絡 - 現在我知道了)。

有什麼辦法可以做到這一點嗎?

回答

5

如果這要在本地網絡上運行,我建議在您的WCF服務上使用TCP端點來連接而不是命名管道端點。

+0

NetTcp?爲什麼不是http?關於過境港口(使用相同的港口)? – guyl 2011-03-09 08:25:55

+0

沒有理由使用http綁定,如果你不打算通過互聯網訪問它。如果您擔心使用相同的端口,請閱讀本文有關WCF TCP端口共享的文章:http://msdn.microsoft.com/en-us/library/ms734772.aspx – 2011-03-09 08:28:19

+0

我們的服務器使用vpn通過網絡。我們應該使用http嗎? – guyl 2011-03-09 08:32:10

1

對於.Net - to - .Net通信,最好使用NetTcp。當混合技術(例如.Net到COM/Java)時,或者當防火牆會阻止您的通信時,您會使用Http。

所以Http是你使用的只有當有理由不使用NetTcp。