我想做非阻塞的GET和POST請求。我已經設法用BackgroundWorker
來解決它,但我需要你的幫助才能使用任務來實現它。WebClient GET/POST沒有阻止UI
public Task<string> Post(Uri uri, string data)
{
return _webClient.UploadStringTaskAsync(uri, data);
}
public Task<string> Get(Uri uri)
{
return _webClient.DownloadStringTaskAsync(uri);
}
我需要請求順序運行。什麼是實施這個的正確方法?標記方法用async
和await
呢?等待每個任務使用Task.WaitAll()
?
的我是什麼樣的一個例子後:
Task<string> loginTask = Post("login", data);
// wait for webrequest to complete and make use of response string
// use data from first request in a new request:
Task<string> someOtherRequest = Get("details");
你沒有編譯的例子。 Post方法的第一個參數是Uri,但是您要傳遞一個字符串。 – Zack 2014-12-01 22:46:36
@Zack這只是讓你一個想法。創建一個新的Uri(str)' – filur 2014-12-01 22:47:13
如果你想讓任何人花時間去幫助你,你需要付出一些努力去創造一個很好的例子。 :\ – Zack 2014-12-01 22:48:22