Asp.Net Core 2.1 WebAPI 通过IFormFileCollection实现多图片上传

  • 背景
  • 关于官方教程
  • 上传测试页面
  • 第一个版本(基于List < IFormFile > )
    • 设置断点测试
    • 测试结果
  • 第二个版本(基于IFormFileCollection)
    • 测试结果
  • 总结

背景

最近在学习 ASP.Net Core 2.1 WebAPI, 在做一个基于 Xamarin.Forms 3.1 App和 WebAPI 后端的小项目,其中有个功能要从手机端选择多张图片并且上传到部署在Azure App Service上的WebAPI并把图片保存在wwwroot的Photos文件夹下。由于官方文档没有关于WebAPI文件上传的章节,因此参考了MVC版的File Uploads,用List来做多图片上传的接收参数类型,碰到各种的问题,搜遍很多文章都没有找到满意的答案。后来反复查看官方文档关于ApiController的一篇文章中提到IFormFileCollection,才把上传功能解决。

第一次写博客,希望此文章能为各位热爱着.Net,热爱着ASP.Net Core的新手看官带来帮助~~

关于官方教程

目前来说没有看到关于ASP.Net Core 2.1 WebAPI 版本的专门关于File Uploads的教程,唯一可以找到的是MVC版的File Uploads。我们可以看到里面提到:

When uploading files using model binding and the IFormFile interface, the action method can accept either a single IFormFile or an IEnumerable (or List) representing several files. …

于是照着教程写了第一个版本的API以及一个用于测试文件上传的的MVC页面,具体见下文。

上传测试页面

<h1>Upload Filesh1>
<

你可能感兴趣的:(Asp.Net,Core,ASP.Net,Core,2.1,.Net,Core,WebAPI,多图片上传,图片上传)