2013-03-02 107 views
0

我有關於Windows Phone 8通信的各種問題,我希望有人能夠澄清。Windows Phone 8通信

  1. 什麼是在wp8設備和服務器之間進行通信的最佳方法? WCF,OData,Json,Webclient,其他?有誰知道推薦標準是什麼?

  2. 基於1,將使用SSL或類似的工作?如果SSL不是一種選擇,你如何通過線路加密數據。

  3. 如何使用異步使用WCF等待(或其他)樣本?我正在開發的這個樣本雖然並不熟悉,但我正在使用wcf,而且我很困惑我應該如何去做。假設以下基本情況:

    一)用戶提供一個登錄頁面。用戶然後單擊登錄。 b)代理首先通過調用.Open打開(我應該叫openasync?)。 c)調用wcf調用.LogonUser(我應該調用LogonUserAsync?)。 d)然後通過調用.Close關閉代理(應該調用CloseAsync?)。

再次我很困惑,如果我不使用異步調用,它感覺不對,認爲這可能是好的。有人能證實這一點嗎?其次,如果我使用異步,我應該從OpenCompleted事件中調用.LogonUser,然後調用LogonUserCompleted中的.Close?似乎雜亂和骯髒的編碼?我可以再次完全關閉,但它感覺不對?

是否有良好的樣品在那裏提供,並通過踩應該是什麼,應該是使用和如何使用它正確的通信協議解釋一步。大多數WCF樣品我發現從未似乎叫我假設是必須的。開& .Close方法,這就是爲什麼,也許它被省略,但再次,當你不知道自己在做什麼不是很明顯。

如果wcf(或任何其他)總是打開&對於每個呼叫(例如登錄,搜索等)關閉,而不是在打開應用程序並重新使用同一對象時將整個會話保持打開狀態?

感謝,並在一個職位的許多問題抱歉。

謝謝。

T.

回答

0

#1沒有拇指決定哪些是其中最好的方法的規則:WCF,OData的,JSON, 我覺得應該用什麼應該由需求來決定。在Windows Phone中,您可以使用這些中的任何一種。

#2如果您沒有使用SSL,那麼你能想到的私有/公共密鑰加密

#3我不知道是否openasync()應該被真正使用。在我的一個項目中,我已經使用WCF服務而不調用openasync()。您應該使用Aync方法。

+0

感謝您的回覆。關於3,奇怪的是,它只是通過wcf給我openasynch()方法而不是.open()。我想最初嘗試使用異步方法。任何想法爲什麼? – Thierry 2013-03-06 23:26:21