开发工具与关键技术: VisualStudio 2015 mvc
作者:杨泽平
撰写时间:2019、5、24
导出Excel表格,在mvc项目中很多地方会用到,导出Excel表格跟导入不同,导入需要自己事先创建好模板,同时导入的方法也比较复杂,而导出不用创建模板,导出是通过js方法创建Excel工作簿的方式导出数据,他的方法也没有那么复杂。以导出学生信息为例。
首先,既然是导出,那导出的是页面的数据,在视图的方法里我们就得获取页面上需要导出的数据,获取到页面的数据还需要判断,判断不为空再输出提示,这里我们页面上设置有查询数据的条件,可根据条件查询到需要的数据再进行导出,点击导出会先弹出提示。
如下图所示:
视图的方法就这些,我们主要的是控制器方法,首先我们需要查询数据库里的数据和做条件筛选,查询用到的是多表联查,这个就不多说了,查询和筛选完了之后就是导出的重要步骤了,我们说过,导出需要通过js方法创建Excel工作簿,这里的步骤为:1、创建工作簿;2、创建工作表;3、创建表头行;4、设置表头。
详情如下图所示:
创建好表之后就要为Excel表格添加数据,这里也是,先创建行,然后添加数据,添加数据将页面获取到的数据一一对应添加就可以了。
详情如下图所示:
添加完数据,我们还有几个步骤,首先为Excel文件命名, 然后转化为内存流形式,将Excel文件写入内存流,输出seek移动文件读取指针到指定的位置,最后return就完成了,点击导出弹出提示再点击确定导出成功会在浏览器左下角显示或者电脑管家会提示。
详情如下图所示: