导入Excel表格(二)
1、 提取session中的数据、并进行分页操作,上传excel表格,保存到临时表格。
初始化临时表格,提交表单,判断状态是否为真,若为真,则启用 导入到数据库 的按钮;为false,让查询的url 和数据 为空,写一个方法到控制器查询数据,把数据保存到临时表格。
2、	控制器
声明一个列表对象,当session的数据不为空时,用来接收保存在session中的数据,然后计算数据的总条数,实例化实体类对象,封装数据,将得到的数据返回到页面。
List<studentVo> listStudentVo = new List<studentVo>();
            if (Session["ImportExcel"] != null)
            {
                listStudentVo = Session["ImportExcel"] as List<studentVo>;
            }
            //计算数据总条数
            int totalRow = listStudentVo.Count();
            List<studentVo> listStu = listStudentVo
                                      .OrderByDescending(m => m.studentID)
                                      .Skip(layuiTablePage.GetStartIndex())
                                      .Take(layuiTablePage.limit)
                                      .ToList(http://www.my516.com);
            //实例化
            LayuiTableData<studentVo> layuiTableData = new LayuiTableData<studentVo>();
            layuiTableData.count = totalRow;
            layuiTableData.data = listStu;
return Json(layuiTableData, JsonRequestBehavior.AllowGet);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
3、	把临时表的数据保存到数据库里面。
首先,声明两个字符串变量,一个用来记录成功保存到数据库的数据条数,另一个用来记录数据库已经存在而保存失败的数据条数,然后用foreach 遍历循环从session中的到的数据,判断得到的数据与数据库中的数据是否重复,若没有重复,就把数据新增到数据库中。最后输出是用到上面声明的两份字符串变量,看成功了多少条数据,失败了多少条数据。
Catch里面是出现错误时返回页面的提示。	
4、效果:
--------------------- 
 
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号