我想做非阻塞的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