2014-10-08 115 views
2

我迁移Win8的应用得到普遍应用,我需要替换下面的代码:Windows 8.1中的通用应用程序的WebClient替代

WebClient wc = new WebClient();     
wc.DownloadStringCompleted += new DownloadStringCompletedEventHandler(wc_DownloadStringCompleted); 
wc.DownloadProgressChanged += new DownloadProgressChangedEventHandler(wc_DownloadProgressChanged); 
wc.DownloadStringAsync(new Uri(URL)); 

问题是,它似乎Web客户端已被弃用,而不是在通用的应用程序支持了。有人推荐我HttpClient,但它没有合适的属性。有没有兼容的课程可以使用?

+0

您应该能够使用HttpClient.GetStringAsync代替。 – 2014-10-08 12:45:54

+0

@JakobChristensen是的,我可以用这种方式下载数据字符串,但HttpClient没有我可以使用的事件。我不知道如何解决这个问题。在下载完成后调用方法是非常重要的,但是当这个操作是异步时,我不知道该怎么做。 – Qerts 2014-10-09 07:54:52

回答

0

唯一的方法,我发现是使用HttpClient的类。然后手动检查并处理响应消息。

-3

使用WebView

WebView wView; 

wView.Navigate(new URI("page")) 
wView.NavigationCompleted += new EventHandler(...) 
wView.NavigationStarting += new EventHandler(...) 
+1

WebView用于显示HTML。这不是WebClient的用途。 – 2014-10-08 12:44:08

-1

试试这个:

HttpClient client = new HttpClient(); 
string ResponceResult= await client.GetStringAsync(new Uri("http://example.com/datalist.aspx")); 
相关问题