【问题标题】:Windows 8.1 Universal app WebClient substitutionWindows 8.1 通用应用 WebClient 替换
【发布时间】:2014-10-08 11:29:43
【问题描述】:

我正在将 Win8 应用程序迁移到 Win 通用应用程序,我需要替换以下代码:

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

问题是,似乎 WebClient 已被弃用,并且在通用应用程序中不再受支持。有人向我推荐了 HttpClient,但它没有合适的属性。我可以使用任何兼容的类吗?

【问题讨论】:

  • 你应该可以使用 HttpClient.GetStringAsync 代替。
  • @JakobChristensen 是的,我可以通过这种方式下载数据字符串,但是 HttpClient 没有我可以使用的事件。而且我不知道如何解决这个问题。下载完成后调用方法是必不可少的,但是虽然这个操作是异步的,我不知道该怎么做。

标签: c# win-universal-app


【解决方案1】:

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

【讨论】:

    【解决方案2】:

    试试这个:

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

    【讨论】:

      【解决方案3】:

      使用 WebView

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

      【讨论】:

      • WebView 用于显示 HTML。这不是 WebClient 的用途。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多