2021年5月13日星期四

.net web core 如何编码实现文件上传功能

关于我

我的博客 | 欢迎关注

前言

在进行Web前后端分析开始时,我们经常会碰到文件上传的需求。上传用户头像,上传认证材料、审核材料等,这些都可以归类为文件上传功能。

今天主要把自己在开发过程中的心得进行一个整理,供大家学习。

开启静态文件中间件

默认情况下,静态文件(如 HTML、CSS、图像和 JavaScript)是 ASP.NET Core 应用直接提供给客户端的资产。

开启静态文件访问,即可以通过浏览器地址输 void Configure(IApplicationBuilder app, IWebHostEnvironment env){ app.UseStaticFiles();}

详情参考官方文档:

https://docs.microsoft.com/zh-cn/aspnet/core/fundamentals/static-files?view=aspnetcore-3.1

文件上传功能

前后台分离项目,所以创建WebApi项目。新建一个控制器,文件名FileController,开始进行一个简单的文件上传编码。

public class FileController : ControllerBase{ private static IWebHostEnvironment _webHostingEnvironment; public FileController(IWebHostEnvironment hostingEnvironment) {  _webHostingEnvironment = hostingEnvironment; } public IActionResult UploadFile(IFormFile formFile) {  //var formFile = Request.Form.Files[0];//获取请求发送过来的文件  var webRootPath = _webHostingEnvironment.WebRootPath;//应用程序根目录  string dirPath = webRootPath + "/UploadFile/" + DateTime.Now.ToString("yyyyMMdd");  //判断保存的文件夹是否存在,不存在创建  if (!Directory.Exists(dirPath))  {   Directory.CreateDirectory(dirPath);  }  if (formFile == null)  {   //保存的文件名称可能存在重复,所以需要在后台对文件进行重命名   string fileExtesion = Path.GetExtension(formFile.FileName);   string fileName = Path.GetFileName(formFile.FileName) + "_" + Guid.NewGuid().ToString() + "." + fileExtesion;   //保存文件   using (var fs = System.IO.File.Create(webRootPath + "/" + fileName))   {    formFile.CopyTo(fs);   }   return new JsonResult(new { success = true, errMsg = "文件上传成功" });  }  else  {   return new JsonResult(new { success = false, errMsg = "未检测到上传的文件" });  } }}

参考

ASP.NET Core单文件和多文件上传并保存到服务端

The END

本文到此结束,希望对你有帮助 😃

更多精彩 技术文章汇总在我的 公众号程序员工具集 ,持续更新,欢迎关注订阅收藏。

如果还有什么疑问或者建议,可以多多交流,原创文章,文笔有限,才疏学浅,文中若有不正之处,万望告知。

福利姬

公众号后台回复:"关注礼包",获取价值5K的视频学习资源

公众号后台回复:"技能图谱",送你一份最全的开发者技能图谱









原文转载:http://www.shaoqun.com/a/740777.html

跨境电商:https://www.ikjzd.com/

yiqu:https://www.ikjzd.com/w/210

淘粉吧怎么返利:https://www.ikjzd.com/w/1725


关于我我的博客|欢迎关注前言在进行Web前后端分析开始时,我们经常会碰到文件上传的需求。上传用户头像,上传认证材料、审核材料等,这些都可以归类为文件上传功能。今天主要把自己在开发过程中的心得进行一个整理,供大家学习。开启静态文件中间件默认情况下,静态文件(如HTML、CSS、图像和JavaScript)是ASP.NETCore应用直接提供给客户端的资产。开启静态文件访问,即可以通过浏览器地址输vo
skyee:https://www.ikjzd.com/w/290
败欧洲网站:https://www.ikjzd.com/w/1555
友家速递:https://www.ikjzd.com/w/1341
(精品分析)亚马逊美国站夜灯类目市场调查数据报告:https://www.ikjzd.com/home/102790
Amazooka:https://www.ikjzd.com/w/947
揭秘!亚马逊成为世界第一的残酷真相!:https://www.ikjzd.com/home/94027

没有评论:

发表评论