【问题标题】:excel export Memory exceptionexcel导出内存异常
【发布时间】:2009-12-10 16:32:17
【问题描述】:

我需要将大量数据从 ado.net 数据表(我通过 db 查询获得)导出到 excel。

我尝试了以下方法:1.使用工作簿/工作表@服务器端创建excel对象......并使用内存流将整个文档写入客户端。

但这给了我“内存不足异常”。因为我的记忆流太大了。

所以我用一种新方法替换了它 - 如下:

将数据表中的每一行作为逗号分隔的字符串写入客户端。因此,当我们得到每一行时......我们可以写入客户端......不使用内存。

但是通过这种方式我们可以写入 csv 文件...而不是 excel...

有谁知道如何处理这种情况。 我可以使用silverlight从服务器逐行获取数据,将其传递到客户端...在客户端构建excel。

【问题讨论】:

    标签: asp.net excel exception memory export


    【解决方案1】:

    你应该在服务器上创建它,然后将它分块复制到客户端。

    例如,请参阅this answer

    【讨论】:

      【解决方案2】:

      如果这是针对 XL 2007 的,那么工作簿基本上是 OPEN XML 文件格式。

      如果您可以格式化数据表中的数据以符合 OPEN XML,则可以保存文件,然后下载整个文件。

      http://msdn.microsoft.com/en-us/library/aa338205.aspx阅读OPEN XML

      【讨论】:

        猜你喜欢
        • 2018-08-24
        • 1970-01-01
        • 2014-03-15
        • 1970-01-01
        • 2018-01-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-08-11
        相关资源
        最近更新 更多