2014-01-05 37 views
3

我想寫與WCF主機/客戶端系統風格和我目前想使用的wsHttpBinding但我讀了,當我越過這條線凸輪別的東西(的isOneWay布爾):對於返回值的方法,我應該使用wsHttpBinding還是wsDualHttpBinding?

「HTTP能不能用於回調,因此你不能使用回調通過BasicHttpBinding或WSHttpBinding'

我的大部分方法都會返回值,例如客戶端會調用一個方法來從服務器返回特定的數據,具體取決於該方法稱爲。像這樣,在返回線中:

public string SayHello(string name) 
{ 
    Console.WriteLine(">>> SayHello has been called"); 
    return string.Format("Hello, {0}!", name); 
} 

返回的行會使它成爲回調,因此我必須使用不同的綁定嗎?或者只有當客戶端向服務器發送'消息'並且服務器發回'消息'時纔會回調?在我的代碼中,它只是調用返回數據的方法,所以不會被歸類爲回調,我可以繼續使用wsHttpBinding?謝謝

回答

3

你絕對不需要wsDualHttpBinding返回值。 BasicHttpBinding甚至更​​好WSHttpBinding是你所需要的

wsDualHttpBinding用於實際從服務器(回調)調用客戶端。這是在網絡世界中沒有廣泛使用的東西,因爲它有侷限性,並且有更好的選擇,如WebSockets和SignalR

+0

啊,謝謝你,清除它。所以它基本上就像提示告訴主機將數據發送到客戶端一樣? –

+0

'wsDualHttpBinding'?這更像是一種回饋的方式。客戶端調用服務器後,它不一定是正確的。 – i3arnon

+0

您可以將其用於例如通知或類似的事情。 – i3arnon

相關問題