首页 新闻 搜索 专区 学院

自己都觉得很恶心的问题,asp.net导出到EXCEL

0
[已解决问题] 解决于 2009-01-06 00:05

不得不先提一下这个问题是被无数的兄弟提了N遍了。在网上找的也是可能有一大堆堆的方案。

但是我想要一个很实用的。被应用到了实际应用中的code。而且是最好是通过使用Excel模板来导出的方法。

听说一些方法需要服务器端配置很高的权限,好像要使asp.net用户有写权限什么的。

又听说好像可以用webservice啥的来做。好像就不会有权限的问题。

总之希望能给出一个好一点的不用设置啥权限的又能实实在在的导出到EXCEL的code,我知道的有通过render事件,用Response的输出,但是这种方法有一个问题,就是导出后实是当中存的是Html格式。

问题补充: 我知道的有几种方法 1.使用控件的render事件。或者之类的使用Response来输出,但是这种输出后在Excel里显示的不是真正的EXCEL格式只是显示的Html,只是EXCEL 支持显示Html格式而且,并且显示的没有表格线,也没有太好的格式,我想要的使用EXCEL模板来导出,自己往里面添数据,然后导出,好像这个不适用。 2.在服务端调用EXCEL对象。这个好像是服务端必须要装相应版本的MS Office,而且有权限的问题,得把服务器相应的地方设成可写的权限,还有这种方法会产出很多的Excel进程,不太好杀掉进程。 3.调用CrystalReports 这样的东东,不过主要的是他不是免费的吧 -_- ! 4.貌似还有一种方法可以使用SQLSERVER 导出。具体的就没太具体的关注。 我现在想要的是一种方法,可以尽量不去设置什么权限,还能正常的导出EXCEL文件。 再次谢谢各位。
二十二号同学的主页 二十二号同学 | 小虾三级 | 园豆:790
提问于:2008-12-27 16:38
< >
分享
最佳答案
0

我知道的就三种方式:

1.控件直接导出,html直接导出

2.通过OLEDB方式将数据插入XLS,之后将这个XLS以文件的形式导出

3.利用客户端的js调用Office的activeX控件实现(客户端必须安装office套件)

GUO Xingwang | 老鸟四级 |园豆:3885 | 2008-12-27 16:52
其他回答(4)
0

说实话 不知道你导出倒excel的用途是什么=。=

如果仅仅是看的话 什么格式都无所谓吧

而且我页没怎么看出 respons导出有什么不好的地方

 除了大数据量的时候可能会出点问题 就没有其他的了

不过一般不会那么大数据量就是了

 

小眼睛老鼠 | 园豆:2774 (老鸟四级) | 2008-12-27 16:46
0

挺那个的,的确。

模版存在于本地,不过有变通的方法,就是把返回的EXCLE内容放到TABLE的,定义TABLE样式,列宽,颜色等,以XLS为扩展名返回,用户用excel打开,一样可以看到table样式,好好调整一下。

差不多的意思就是说,实际上是用excel打开了一个html文件,其余的工作,交给excel的“另存为”去吧。

风海迷沙 | 园豆:4453 (老鸟四级) | 2008-12-28 21:41
0

如果数据量比较小的话,推荐用RDLC报表的导出Excel功能,格式很漂亮,又简单。
如果数据量比较大,还是直接导出比较好。就是你说的方法2.虽然有一些问题,但是也没有办法。

1-2-3 | 园豆:200 (初学一级) | 2008-12-29 08:58
1

用NPOI,免费的开源项目,不需要安装office

找事的狐狸 | 园豆:474 (菜鸟二级) | 2011-11-13 11:23
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册