C# MVC controller 上传附件及下载附件(笔记)

news/2024/11/15 0:59:42/

描述:Microsoft.AspNetCore.Http.IFormFileCollection 实现附件快速上传功能代码。

上传附件代码

        [Route("myUploadFile")][HttpPost]public ActionResult MyUploadFile([FromForm] upLoadFile rfile){string newFileName = Guid.NewGuid().ToString("N") + rfile.mingcheng;string dirPath = Path.Combine(new string[] { Environment.CurrentDirectory, "wwwroot", "File", "FileUpload", newFileName });if (System.IO.Directory.Exists(dirPath)){System.IO.Directory.CreateDirectory(dirPath);System.Threading.Thread.Sleep(0);}string filePath = Path.Combine(new string[] { dirPath, newFileName });var t = Request.Form.Files[0];using (FileStream fs = System.IO.File.Open(filePath, FileMode.OpenOrCreate)){string fileName = rfile.files[0].FileName;byte[] bs = new byte[rfile.files[0].Length];GetPicThumbnail(rfile.files[0].OpenReadStream()).Read(bs, 0, bs.Length);fs.Write(bs, 0, bs.Length);fs.Close();}return new ObjectResult(new { code = "1", msg = "文件上传成功" });}

upLoadFile Model类定义

    public class upLoadFile{public string mingcheng { get; set; }public Microsoft.AspNetCore.Http.IFormFileCollection files { get; set; }public string miaoshu { get; set; }}

附件下载代码:

      [Route("myGetFile")][HttpGet]public ActionResult MyGetFile(string id){PhysicalFileResult f = new PhysicalFileResult(@"E:\work\codes\技术积累\临时\weixinshare\weixinshare\weixinshare\wwwroot\File\weixinimg\2edf0b9324cb44edaa7d73ea46ab0b15.jpg", "application/file");f.FileDownloadName = "ddd.jpg";f.EnableRangeProcessing = true;f.LastModified = DateTimeOffset.Now;return f;}

http://www.ppmy.cn/news/1014952.html

相关文章

hive 字段注释乱码

hive 字段注释乱码: 在mysql中运行: alter table COLUMNS_V2 modify column COMMENT varchar(256) character set utf8;OK

【三维编辑】SPIn-NeRF:多视图分割与感知修复(CVPR 2023)

文章目录 摘要一、简介二、相关工作1.Image Inpainting2.NeRF 操作3. 背景: NeRF 知识 三、方法3.1.多视图分割3.1.1掩码初始化3.1.2基于nerf的分割 3.2.多视图 Inpainting3.2.1 RGB先验3.2.2深度先验3.2.3基于patch 的优化3.2.4掩码精炼 四、实验五、安装与代码讲解1.项目安装…

【Go语言】Golang保姆级入门教程 Go初学者chapter2

【Go语言】变量 VSCode插件 setting的首选项 一个程序就是一个世界 变量是程序的基本组成单位 变量的使用步骤 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zuxG8imp-1691479164956)(https://cdn.staticaly.com/gh/hudiework/imgmain/image-20…

备忘录模式(C++)

定义 在不破坏封装性的前提下,捕获一-个对象的内部状态,并在该对象之外保存这个状态。这样以后就可以将该对象恢复到原先保存的状态。 应用场景 ➢在软件构建过程中,某些对象的状态在转换过程中,可能由于某种需要,要…

关于nvcc fatal : Value ‘sm_20‘ is not defined for option ‘gpu-architecture‘错误

最近在学习CUDA,看着CUDA C教程 使用nvcc进行编译文件出现这个问题。 运行代码: nvcc -arch sm_20 cudatest.cu -o hello错误: nvcc fatal : Value sm_20 is not defined for option gpu-architecture解决: 教程使用的架构较…

openEuler加载本地yum源

挂载iso文件到mnt mount /data/download/openEuler-22.03-LTS-x86_64-dvd.iso /mnt/修改/etc/yum.repos.d/openEuler.repo [Local] namelocal baseurlfile:///mnt enabled1 gpgcheck1 gpgkeyfile:///etc/pki/rpm-gpg/RPM-GPG-KEY-openEuler3.更新yum源信息 yum clean all yu…

JavaWeb 速通Cookie

目录 一、关于base标签 1.引入 : 2.介绍 : 3.实例 : 4.细节 : 二、Cookie的引入 1.会话技术 : 1 什么是会话技术? 2 会话技术用于解决什么问题? 2.Cookie介绍 1 Cookie有什么用? 2 Cookie通讯机制 三、Cookie的基本使用 1.创建Cookie…

马氏杆法检查斜视

使用 检查水平向斜视时,使用水平向马氏杆检查;重直向斜视时,使用重直问马氏杆;检查旋转斜视时,使用双马氏杆. 检查水平向斜视 双眼屈光不正全矫 双眼同时打开,右眼前加水平向马氏杆,左眼前不加 双眼同时观察点光源&…