.net高效导出excel_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > .net高效导出excel

.net高效导出excel

 2011/1/14 7:39:31  hatedance  http://hatedance.javaeye.com  我要评论(0)
  • 摘要:维护一个老系统,.net写的,功能是查询并导出为excel。用户发现数据超过10000行的时候,系统报错。经过分析,应该是viewstate大小超限了,查询结果首先是用datagrid展示的,而且其viewstate是enabled。iis6以后,可以调整web服务器能接受的post数据的最大值,但ii5不行。tomcat也有类似的参数。没办法,只好禁用datagrid的viewstate。而是把查询结果保存在session了,或者导出的时候,再查询一次。接下来还有一个问题
  • 标签:.net excel net 导出excel

维护一个老系统,.net写的,功能是查询并导出为excel。

用户发现数据超过10000行的时候,系统报错。

经过分析,应该是viewstate大小超限了,查询结果首先是用datagrid展示的,而且其viewstate是enabled。iis6以后,可以调整web服务器能接受的post数据的最大值,但ii5不行。tomcat也有类似的参数。

没办法,只好禁用datagrid的viewstate。而是把查询结果保存在session了,或者导出的时候,再查询一次。

接下来还有一个问题,导出1万条数据到excel时,效率极低,需要好几分钟。

google了一下,发现这是excel interop方式下的一个问题。解决办法是有的。

原来用worksheet.cells[x,y]这样的方式填充数据太低效。得用worksheet.get_range("A1","A1").get_resize(100,100).value=aArray;这样的方式,把一个二维数组直接赋值,瞬间完成。

?

把这个小事记下来,给用得着的朋友做参考。

发表评论
用户名: 匿名