asp.net可以不在服务器端生成Excel直接下载到本地吗?

时间:2021-11-12 17:49:29
做到一个ASP.NET的项目,在服务器上用OFFICE的COM组件和EXCEL.模板生成了新的EXCEL,但因为权限关系希望不在服务器保存生成的EXCEL而是直接下载可以吗?  
原来的代码如下,是会在服务器上生成EXCEL文件的
workbook.Saved = true;
workbook.SaveCopyAs(newEXCEL.xls");//这句应该就是在服务器上生成新的EXCEL文件
 xlApp.Quit();
GC.Collect();

PS:网上似乎有流输出的方式,但是因为格式非常复杂,所以我是用模板生成的EXCEL。希望不再服务器保存而直接下载可能吗?

求大虾指点!!!

6 个解决方案

#1


你所说的“在服务器上用OFFICE的COM组件和EXCEL.模板生成了新的EXCEL”,新的excel不是文件是什么?byte[]?那可以。

#2


是个EXCEL文件,不是用流方式生成的。

#3


该回复于2014-05-31 08:44:31被管理员删除

#4


嗯,明白你的意思了
我记得excel.workbook有个saveas方法,可以保存为string,然后你再把string转成byte[],然后就可以提供下载了。

我找找网上有没有这方面的资料。

#5


好像没找到。。。。

你可以自己在vs.net里直接看看有没有类似的方法v,如果一个定要保存成文件,那没办法了。

#6


该回复于2014-06-01 13:49:50被管理员删除

#1


你所说的“在服务器上用OFFICE的COM组件和EXCEL.模板生成了新的EXCEL”,新的excel不是文件是什么?byte[]?那可以。

#2


是个EXCEL文件,不是用流方式生成的。

#3


该回复于2014-05-31 08:44:31被管理员删除

#4


嗯,明白你的意思了
我记得excel.workbook有个saveas方法,可以保存为string,然后你再把string转成byte[],然后就可以提供下载了。

我找找网上有没有这方面的资料。

#5


好像没找到。。。。

你可以自己在vs.net里直接看看有没有类似的方法v,如果一个定要保存成文件,那没办法了。

#6


该回复于2014-06-01 13:49:50被管理员删除