【问题标题】:How can I do a files upload like this in ASP.NET Core?如何在 ASP.NET Core 中进行这样的文件上传?
【发布时间】:2018-08-30 01:34:06
【问题描述】:

我正在关注一篇关于通过分块上传大文件的文章。部分 .NET Framework (pre-Core) 示例代码,在处理每个文件的文章中如下所示:

foreach (string file in Request.Files)
{
    var FileDataContent = Request.Files[file];
    if (FileDataContent != null && FileDataContent.ContentLength > 0)
    {
    ...
    }
}

我后来发现我更应该使用Request.Form.Files,然后是代码:

foreach (var file in Request.Form.Files)
{
    var xx = Request.Form.Files[file];
}

给我一​​个编译错误:

CS1503 参数 1:无法从 'Microsoft.AspNetCore.Http.IFormFile' 到'字符串'

我可以使用什么代码来实现相当于在 ASP.NET Core 2.0 中遍历所有上传的文件?

【问题讨论】:

    标签: asp.net asp.net-mvc file-upload upload asp.net-core-mvc


    【解决方案1】:

    现在(我尝试过 ASP.Net Core 1.0 和 2.0)Request.Form.Files 的类型为 IFormFileCollection,它实现了 IEnumerable<IFormFile>。因此不再需要通过字符串键访问文件字典。您基本上可以直接枚举IFormFile 的实例,例如:

    foreach (IFormFile file in Request.Form.Files)
    {
        //  Access properties of a file like file.Name or file.Length
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-10-28
      • 2018-08-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-01
      相关资源
      最近更新 更多