提问者:小点点

将foreach循环转换为Task.WhenAll


foreach循环转换为task.whenall时遇到问题。

方法返回任务

foreach (var p in ps)
{
    p.reportDownload = await runReport(p);
}

我尝试过,但需要等待将任务转换为byte[]并且我无法添加它。

await Task.WhenAll(ps.Select(p => p.reportDownload = runReport(p)));

我正在尝试下载大约15个报告异步,以等待所有的已经下载,然后将它们合并成一个PDF。

注意:我使用的是框架4.8.3


共1个答案

匿名用户

await Task.WhenAll(ps.Select(async p => p.reportDownload = await runReport(p)));