我是一個WCF新手,我需要一些幫助來開始一個項目:WCF通信在互聯網上
我將有一個管理應用程序(服務器)需要進行通信(通訊系統)與幾個客戶通過互聯網,反之亦然。
實現此目標的最佳方法是什麼? 使用wsDualBinding?
UPDATE
我決定使用NetTcpBinding的模式,而不是。
我是一個WCF新手,我需要一些幫助來開始一個項目:WCF通信在互聯網上
我將有一個管理應用程序(服務器)需要進行通信(通訊系統)與幾個客戶通過互聯網,反之亦然。
實現此目標的最佳方法是什麼? 使用wsDualBinding?
UPDATE
我決定使用NetTcpBinding的模式,而不是。
WSDualHttpBinding
不適合上網。只有在沒有防火牆和NAS限制的本地網絡(內部網)中回叫纔有效。
詳情請參見這篇文章:
Connecting over internet to WCF service using wsDualHttpBinding times out
使用WsHttpBinding
如果要設置服務器到服務器的通信(應爲WPF工作)。
如果您打算使用Javascript中的數據,請使用WebHttpBinding
。
這取決於您的服務需要展示哪些功能以及需要支持哪種類型的客戶端。任何基於HTTP的綁定都可以在互聯網上運行,它只是數據編碼方式的一個問題。
內置的綁定和他們支持什麼樣的總結可以在這裏找到:http://msdn.microsoft.com/en-us/library/ms731092.aspx
但最常見的是:
既然你特別問二元結合:
如果你正在編寫需要能夠實現從服務器回調到客戶端的應用程序,那麼雙重結合真的是你唯一的選擇。但是,由於您特別提到了聊天,所以我認爲雙通道服務不會奏效。
回調在WCF中的工作方式是您的客戶端使用雙通道調用服務,並且必須提供回調接口的實現。在服務方法調用期間,服務器可以使用它來撥打客戶端;回調上下文是按服務調用的,因此一旦該調用返回,它就不再有效。換句話說,你的服務器不能異步地「調用」你的客戶端,它必須等待客戶端「輪詢」服務器。如果你打算這樣做,你不再需要這個回調。
老實說,我不認爲我會用WCF上的互動式雙向聊天應用程序,但我能想到的兩種可能的選擇,這樣做的:
我意識到可能的選擇,我的問題是要知道wsdualhhp結合是否是「聊天」系統的最佳解決方案。服務器應用程序和客戶端應用程序都是用WPF構建的。 –
謝謝,在閱讀了很多內容之後,我專門使用了NetTcpBinding模式。 –