asp.net api 下载文件与.net 5.0 下载文件
2022/6/5 1:21:54
本文主要是介绍asp.net api 下载文件与.net 5.0 下载文件,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1.asp.net api 下载文件
[HttpGet] public HttpResponseMessage DownFile(string fileName) { try { string filefullPath = Path.Combine(System.Web.HttpContext.Current.Request.PhysicalApplicationPath, "TempFile"); string filePath = Path.Combine(filefullPath, $"{fileName}"); if(File.Exists(filePath)) { FileStream fileStream = new FileStream(filePath, FileMode.Open); HttpResponseMessage response = new HttpResponseMessage(HttpStatusCode.OK); response.Content = new StreamContent(fileStream); response.Content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream"); response.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment") { FileName = fileName }; return response; } else { return new HttpResponseMessage(HttpStatusCode.NoContent); } } catch (Exception ex) { return new HttpResponseMessage(HttpStatusCode.NoContent); } }
2. .net 5.0 下载文件
1.首先在控制器中注入IHostingEnvironment
private readonly IHostingEnvironment _hostingEnvironment; public UploadController(IHostingEnvironment hostingEnvironment) { _hostingEnvironment = hostingEnvironment; }
2.添加下载方法
public IActionResult DownFile(string fileName) { try { string webRootPath = _hostingEnvironment.WebRootPath; string contentRootPath = _hostingEnvironment.ContentRootPath; string filefullPath = Path.Combine(contentRootPath, "TempFile"); string filePath = Path.Combine(contentRootPath, "TempFile", $"{fileName}"); FileStream fileStream = new FileStream(filePath, FileMode.Open); return File(fileStream, "application/octet-stream", $"{fileName}"); } catch (Exception ex) { return new JsonResult(new ResultData<string> { Code = 1, Message = $"Failed to download file : {ex.Message}", Data = $"{fileName}" }); } }
这篇关于asp.net api 下载文件与.net 5.0 下载文件的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2022-03-01沐雪多租宝商城源码从.NetCore3.1升级到.Net6的步骤
- 2024-11-18微软研究:RAG系统的四个层次提升理解与回答能力
- 2024-11-15C#中怎么从PEM格式的证书中提取公钥?-icode9专业技术文章分享
- 2024-11-14云架构设计——如何用diagrams.net绘制专业的AWS架构图?
- 2024-05-08首个适配Visual Studio平台的国产智能编程助手CodeGeeX正式上线!C#程序员必备效率神器!
- 2024-03-30C#设计模式之十六迭代器模式(Iterator Pattern)【行为型】
- 2024-03-29c# datetime tryparse
- 2024-02-21list find index c#
- 2024-01-24convert toint32 c#
- 2024-01-24Advanced .Net Debugging 1:你必须知道的调试工具