2012-07-17 73 views
0

我想同步調用一個restful api。我想知道如何同步啓動服務API?是否有可能同步調用API?如何獲得同步HTTP響應

+0

您能否給我們在它需要你的場景?你到目前爲止的任何代碼?你的問題的答案是「是」,順便說一句。 – 2012-07-17 10:53:00

+0

@igrali:我想要點擊付款API,並想要鎖定屏幕(顯示屏幕屏幕),直到付款api響應到來。一旦響應來到,基於那個想調用另一個webservice。 – Invincible 2012-07-17 11:11:36

+1

這聽起來像異步場景。先調用api - >顯示加載屏幕 - >當你收到異步回調時,調用下一個api調用 - >當第二次調用返回時,移除加載屏幕。 – 2012-07-17 11:25:40

回答

1

您不需要同步調用您的方案。您所需要的只是處理即將到來的響應,而異步模式則完美無缺。

假設您正在使用Web客戶端(很容易地適應任何場景)工作:

WebClient client = new WebClient(); 
client.DownloadStringCompleted += (s,e) => 
{ 
    if (e.Result == "Paid") 
     LoadingScreen.Visibility = Visibility.Collapsed; 
}; 
client.DownloadStringAsync(new Uri("http://somerestapi.out.there")); 
LoadingScreen.Visibility = Visibility.Visible; 
+0

感謝您的回答。我們可以在一個頁面上添加多個屏幕嗎?是否可以在一個頁面上添加多個屏幕? – Invincible 2012-07-17 17:21:30

+1

您正在尋找彈出窗口:http://msdn.microsoft.com/en-us/magazine/hh456394.aspx – 2012-07-17 17:28:36

+0

再次感謝您的答案。還有一件事你能告訴我什麼時候,爲什麼以及如何在你的Windows應用程序中實現usercontrol。 – Invincible 2012-07-17 17:50:55