MVC浏览器导出Excel文件(NPOI)

一、首先引用NPOI的.dll

.dll下载地址:链接:https://pan.baidu.com/s/1K4cCb4qpkIfDoH1fZnNvVQ 密码:i9sl

里面有一个ExcelHelper帮助类,复制到项目中,给该帮助类中的方法传参即可完成导出

二、在View中:按钮直接跳转到该哪个控制器中的方法(注意该方法的返回值类型为FileResult)

三、在控制器方法中代码如下:

 public FileResult DropFile()
        {
            string sheetName = "工作簿1";//设置工作簿名称
            string DropPath = Server.MapPath(@"\DropExcal\");//设置保存路径
            if (!Directory.Exists(DropPath))//判断该路径是否存在
            {
                Directory.CreateDirectory(DropPath);//不存在则创建
            }
            string FileName = "Excel数据导出" + System.DateTime.Now.ToFileTimeUtc().ToString() + ".xlsx";//设置导出后的文件名称
            //////////  调用帮助类  //////////
            DataTable Cusdt = ToDataTable(list);//调用帮助类将List<T> 类型转化为DataTable类型
            ExportExcel(Cusdt, sheetName, "客户数据", DropPath + FileName);//调用帮助类将文件先保存在本地文件夹中(帮助类自动将Table表格转化为Excel,当让还有几种样式可供选择)
            //////////  调用帮助类  //////////
            string s = MimeMapping.GetMimeMapping(FileName);//获取下载 内容类型(MIME 类型)。
            return File(DropPath + FileName, s, Path.GetFileName(DropPath + FileName));//返回一个浏览器下载对话框(下载保存后的本地文件)
        }

数据格式转化: https://blog.csdn.net/emoonight/article/details/6617683 借鉴

此时点击下载浏览器就会弹出下载提示框:

 

posted @ 2018-08-18 18:21  StitchWang  阅读(574)  评论(0编辑  收藏  举报