项目维护与二次开发c# List<object> 数据按分页导出到excel中不同sheet表

chjyezi 2017-11-07 04:56:06
项目维护与二次开发,没搞明白,请高手指点,谢谢!
1.项目中所有按钮事件调用如下:
.aspx文件
<div class="button1" onclick="A1.GetDataBing(true);"></div>
.cs文件
[AjaxMethod]
public void GetDataBing(){内容省略}
从数据库取数据的方法如下:
public static List<object>
之前未接手过类似项目,不明白为何如此做,请有经验的朋友指点。

2.List<object> 数据按分页导出到excel中不同sheet表,如果有20页导出的excel中有20个sheet表,如何实现?
...全文
362 6 点赞 打赏 收藏 举报
写回复
6 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
夏天的枫 2017-11-09
第一个问题,不这样还要怎样。。。就是简单的页面触发方法,有什么特别的地方么,没看出来 第二个,无非就是要知道每一页能够容纳多少行,然后做除法取整不就得了。。。 人家说的模板应该是定义好excel的格式,比如说单元格字体颜色啊,是否加粗啊,行高啊之类的,然后往格子里面填数据再做点其他处理(合并之类的)就好了
  • 打赏
  • 举报
回复
chjyezi 2017-11-08
自己查了查web.config上的信息,发现程序中使用的是Coolite.Net
  • 打赏
  • 举报
回复
chjyezi 2017-11-08
引用 1 楼 hjq624779687 的回复:
完全不明白你在说什么
我也是读别人写的程序,只能从页面的事件追踪到cs里的方法,方法中的绑定数据,我说的不明白吗?
  • 打赏
  • 举报
回复
chjyezi 2017-11-08
引用 2 楼 alexshyong 的回复:
首先,你需要对List<object>中的数据量进行判断,然后设定循环导入即可 例如: if(list.count/20==) //直接写入一个excel中的sheet表 else for(int x=0;x<list.count/20;x++) { //依据截取的list数据分别创建sheet表并按照格式写入值。 //注意:excel写入值的时候其实一般是提前写好模板在做的,所以建议你在建立第二个sheet的时候,复制第一个设置好的模板,这样就可以循环完成数据导出了 }
我也这么想的,不会写出来,而且EXCEL中的模板也是写在程序中的如下:

Response.Write("<?xml version='1.0'?><?mso-application progid='Excel.Sheet'?>");
        Response.Write(@"<Workbook xmlns='urn:schemas-microsoft-com:office:spreadsheet'
      xmlns:o='urn:schemas-microsoft-com:office:office' xmlns:x='urn:schemas-microsoft-com:office:excel'
      xmlns:ss='urn:schemas-microsoft-com:office:spreadsheet' xmlns:html='http://www.w3.org/TR/REC-html40'>");
        Response.Write(@"<Styles><Style ss:ID='Default' ss:Name='Normal'><Alignment ss:Vertical='Center'/>
  • 打赏
  • 举报
回复
帅猪儿 2017-11-07
首先,你需要对List<object>中的数据量进行判断,然后设定循环导入即可 例如: if(list.count/20==) //直接写入一个excel中的sheet表 else for(int x=0;x<list.count/20;x++) { //依据截取的list数据分别创建sheet表并按照格式写入值。 //注意:excel写入值的时候其实一般是提前写好模板在做的,所以建议你在建立第二个sheet的时候,复制第一个设置好的模板,这样就可以循环完成数据导出了 }
  • 打赏
  • 举报
回复
夏天的枫 2017-11-07
完全不明白你在说什么
  • 打赏
  • 举报
回复
相关推荐
发帖
C#
加入

10.6w+

社区成员

.NET技术 C#
申请成为版主
帖子事件
创建了帖子
2017-11-07 04:56
社区公告

让您成为最强悍的C#开发者