asp.net core webapi 文件下载实现

摘要:
在.NETWebAPICore varfileProvider=newPhysicalFileProvider(“hostpathathb”)//绝对路径中实现文件下载,例如c:files;网络路径:acvardiretoryOptions=newDirectoryBrowserOptions{FileProvider=FileProvider,RequestPath=“/fi

在.NET Web API Core 中实现文件下载

       var fileProvider = new PhysicalFileProvider("\hostpathapathb");//绝对路径,如 c:files ;网络路径:\ac

            var diretoryOptions = new DirectoryBrowserOptions
            {
                FileProvider = fileProvider,
                RequestPath = "/files",
                Formatter= new MyDirectoryFormatter(HtmlEncoder.Default)//自定义文件目录页面
            };

            var fileExtensionContentTypeProvider = new FileExtensionContentTypeProvider();
            fileExtensionContentTypeProvider.Mappings[".xml"]= "application/octet-stream"; //IE不支持           

            var fileOptions = new StaticFileOptions
            {
                FileProvider = fileProvider,
                RequestPath = "/documents",
                ContentTypeProvider = fileExtensionContentTypeProvider,
                OnPrepareResponse = (staticFileResponseContext)=>{ staticFileResponseContext.Context.Response.Headers.Add("content-disposition", "attachment"); }//在IE中让文件作为附件下载
            };

            app.UseDirectoryBrowser(diretoryOptions);
            app.UseStaticFiles();
            app.UseStaticFiles(fileOptions);
MyDirectoryFormatters 实现 IDirectoryFormatter接口,可以自定义文件夹显示界面;

DirectoryBrowserOptions 建立文件夹与URL的映射

StaticFileOptions 建立文件与URL的映射
 


免责声明:文章转载自《asp.net core webapi 文件下载实现》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇淘宝数据结构来看电子商务中商品属性设计webpack4多页应用HTML按需添加入口依赖chunk【html-webpack-plugin & html-inline-entry-chunk-plugin】下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

JS 获取当前日期时间(兼容IE FF)

以前在页面中获得当前时间的方法如下: function SelectTodayClient() {var d = new Date();var taday = d.getYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate(); alert($(taday);}  IE运行正常,FF...

Inno_setup制作升级包必须面临的几个问题

这两天的时间一直在制作应用程序的升级包,期间碰到一些问题这里一并记录下来,相信这是制作升级包必须面临和解决的问题: 1. 升级包安装程序如何不再产生新的安装、卸载程序 Inno_setup中AppId是用来标识某个应用程序的唯一标识,因此升级包中的AppId字段应该和原始安装程序的AppId相同。 CreateUninstallRegKey字段,改值设置为...

VS2010-MFC(利用MFC向导生成单文档应用程序框架)

  一.VC++与MFC        讲VC++免不了要提MFC,MFC全称Microsoft Foundation Classes,也就是微软基础类库。它是VC++的核心,是C++与Windows API的结合,很彻底的用C++封装了Windows SDK(Software Development Kit,软件开发工具包)中的结构和功能,还提供了一个应...

图片存储类型的种类、特点、区别

BMP 是 DOS 和 Windows 兼容计算机上的标准 Windows图像格式。BMP 格式支持 RGB、索引颜色、灰度和位图颜色模式。可以为图像指定 Windows 或 OS/2® 格式和位深度。对于使用 Windows 格式的 4 位和 8 位图像,还可以指定 RLE 压缩。 BMP 图像通常是自下而上编写出;但您也可以选择“翻转行...

重新整理 .net core 实践篇—————中间件[十九]

前言 简单介绍一下.net core的中间件。 正文 官方文档已经给出了中间件的概念图: 和其密切相关的是下面这两个东西: IApplicationBuilder 和 RequestDelegate(HttpContext context) IApplicationBuilder : public interface IApplicationBuilde...

速看,APP测试之ADB最全指南!

大家好,我是coco小锦鲤我又来了 我又带着希望和爱来了 ​今天介绍ADB环境搭建及常用的ADB命令 ADB全称Android Debug Bridge, 是android sdk里的一个工具,目的是起到调试桥的作用,用这个工具可以直接操作管理android模拟器或者真实的andriod设备(手机),是客户端测试常用的辅助工具。 借助adb工具,我们可以管...