C#多个任务上载的多个文件上传

时间:2019-03-05 14:19:09

标签: c# .net

我有这段代码,可以上传一个文件,对文件进行一些处理,生成一个zip文件,最后将其下载到本地:

[Route("api/[controller]")]
public class ConvertController : Controller
{
   //[HttpPost]
   public async Task<IActionResult> Post(IFormFile file)
   {
     // processes on the file
     return File(zipStream, "application/zip");
   }
}

我对其进行了更改,以便使用多个文件(我修改了HTML文件)。我放置了一个for循环以重复“进程块”,现在需要return循环中的每个压缩项。

我无法将return Task<IActionResult>更改为列表或数组。

[Route("api/[controller]")]
public class ConvertController : Controller
{
  //POST api/convert
  [HttpPost]
  public async Task<IActionResult> Post(List<IFormFile> files) 
  {
       var FileArr = new List<FileStreamResult>();  
       foreach (var formFile in files)
        {
          // processes on each file
           var output = File(zipStream, "application/zip");
           FileArr.Add(output);

        }
        return FileArr;
    }
}

正确的方法是什么?

0 个答案:

没有答案