描述: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类定义文章来源:https://www.toymoban.com/news/detail-638980.html
public class upLoadFile
{
public string mingcheng { get; set; }
public Microsoft.AspNetCore.Http.IFormFileCollection files { get; set; }
public string miaoshu { get; set; }
}
附件下载代码:文章来源地址https://www.toymoban.com/news/detail-638980.html
[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;
}
到了这里,关于C# MVC controller 上传附件及下载附件(笔记)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!