小编Ran*_*laa的帖子

文件上传.NET Core“IFormFile”不包含“SaveAsASync”的定义并且没有扩展方法

我正在尝试使用 ASP.NET Core Web Api 上传文件。正如我发现的那样,这段代码:

namespace ModelBindingWebSite.Controllers
{
  public class HomeController : Controller
  {
    private IHostingEnvironment _environment;

    public HomeController(IHostingEnvironment environment)
    {
        _environment = environment;
    }
    public IActionResult Index()
    {
        return View();
    }

    [HttpPost]
    public async Task<IActionResult> Index(ICollection<IFormFile> files)
    {
        var uploads = Path.Combine(_environment.WebRootPath, "uploads");
        foreach (var file in files)
        {
            if (file.Length > 0)
            {
                var fileName = ContentDispositionHeaderValue.Parse(file.ContentDisposition).FileName.Trim('"');
                await file.SaveAsAsync(Path.Combine(uploads, fileName));
            }
        }
        return View();
    }
}
Run Code Online (Sandbox Code Playgroud)

我收到错误IFormFile不包含定义SaveAsASync并且没有扩展方法。任何想法?

file-upload asp.net-web-api

4
推荐指数
1
解决办法
1万
查看次数

如何读取扩展文件属性/文件元数据

因此,我按照教程使用 ASP.net 核心将文件“上传”到本地路径,这是代码:

public IActionResult About(IList<IFormFile> files)
    {

        foreach (var file in files)
        {
            var filename = ContentDispositionHeaderValue
                            .Parse(file.ContentDisposition)
                            .FileName
                            .Trim('"');
            filename = hostingEnv.WebRootPath + $@"\{filename}";

            using (FileStream fs = System.IO.File.Create(filename))
            {
                file.CopyTo(fs);
                fs.Flush();
            }
        }


        return View();
    }
Run Code Online (Sandbox Code Playgroud)

我想读取文件(文件元数据)的扩展属性,例如:

  • 姓名,
  • 作者,
  • 发布日期,
  • 等等

并使用这些数据对文件进行排序,有没有办法使用 Iformfile?

c# asp.net-mvc winapi

3
推荐指数
1
解决办法
3万
查看次数

标签 统计

asp.net-mvc ×1

asp.net-web-api ×1

c# ×1

file-upload ×1

winapi ×1