一、首先引用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 借鉴
此时点击下载浏览器就会弹出下载提示框: