我有一些现有的代码,正在将其迁移到Windows 8 WinRT平台。该代码从URL获取数据,并异步调用传递的委托:
private void RequestData(string uri, Action<string> action)
{
var client = new WebClient();
client.DownloadStringCompleted += (s,e) => action(e.Result);
client.DownloadStringAsync(new Uri(uri));
}
转换为WinRT需要使用 HttpClient
和异步方法。我已经阅读了一些关于异步/等待的教程,但有点困惑。我如何更改上面的方法,但保持方法签名以避免改变我的代码更多?
DownloadString*TASK*Async
和DownloadStringAsync
。由于需要保持向后兼容性,因此需要在类中添加一个新的方法。 - Simon_Weaver