Asynchronous 异步web响应windows phone 8

Asynchronous 异步web响应windows phone 8,asynchronous,Asynchronous,这是我用来下载URL作为html的代码。问题是,我能做什么 这是异步的吗?问题是,在程序继续之前,我想知道响应是否成功以及响应中的内容。如果您可以等待client.DownloadStringAsync和task.delay,那就太好了,而且我不喜欢设置标准等待时间的想法。谢谢大家! Uri uri = new Uri(url); WebClient client = new WebClient(); client.DownloadStringCo

这是我用来下载URL作为html的代码。问题是,我能做什么 这是异步的吗?问题是,在程序继续之前,我想知道响应是否成功以及响应中的内容。如果您可以等待client.DownloadStringAsync和task.delay,那就太好了,而且我不喜欢设置标准等待时间的想法。谢谢大家!

        Uri uri = new Uri(url);
        WebClient client = new WebClient();
        client.DownloadStringCompleted += new DownloadStringCompletedEventHandler(client_DownloadStringCompleted);
        client.AllowReadStreamBuffering = true;
        client.DownloadStringAsync(uri);

有两种解决办法

第一个(我建议)是使用,并将代码更改为使用新的
HttpClient
而不是旧的
WebClient

Uri uri = new Uri(url);
HttpClient client = new HttpClient();
await client.GetStringAsync(uri);
第二种解决方案将允许您继续使用
WebClient
,因此,如果您有大量依赖于
WebClient
的其他代码,它可能会作为临时修复程序。要将
async
WebClient
一起使用,请安装,然后可以使用
下载StringTaskAsync

Uri uri = new Uri(url);
WebClient client = new WebClient();
await client.DownloadStringTaskAsync(uri);

有两种解决办法

第一个(我建议)是使用,并将代码更改为使用新的
HttpClient
而不是旧的
WebClient

Uri uri = new Uri(url);
HttpClient client = new HttpClient();
await client.GetStringAsync(uri);
第二种解决方案将允许您继续使用
WebClient
,因此,如果您有大量依赖于
WebClient
的其他代码,它可能会作为临时修复程序。要将
async
WebClient
一起使用,请安装,然后可以使用
下载StringTaskAsync

Uri uri = new Uri(url);
WebClient client = new WebClient();
await client.DownloadStringTaskAsync(uri);

那么,不要使用异步。使用synchronous,它将阻塞直到操作完成。然后,不要使用asynchronous。使用synchronous,它将阻塞直到操作完成