【发布时间】:2020-07-15 19:49:46
【问题描述】:
我正在尝试将多个资源组合在一个集合中(下面的变量)。 GetLocations2 返回一个任务,我希望能够将其添加到任务结果集合(同样是 s 变量)。但是,由于以下错误,我无法将任务结果添加到集合中:
错误 CS1503 参数 1:无法从“字符串”转换为 'System.Threading.Tasks.Task'
调用
public static async Task<string> WebRequest2(Uri uri)
{
using (var client = new WebClient())
{
var result = await client.OpenReadTaskAsync(uri).ConfigureAwait(false);
using (var sr = new StreamReader(result))
{
return sr.ReadToEnd();
}
}
}
来电者
private static async Task GetLocations2()
{
var s = new List<Task<string>>();
foreach (var lob in _lobs)
{
var r = await Helper.WebRequest2(new Uri(lob));
var x = Helper.DeserializeResponse<SLICS>(r);
s.Add(r); //Getting red squiggly here
}
//var w = await Task.WhenAll();
}
【问题讨论】:
标签: c# asynchronous async-await task-parallel-library