【问题标题】:Asp.net using oledb to export excel file returns empty excel fileAsp.net使用oledb导出excel文件返回空的excel文件
【发布时间】:2010-02-24 07:27:45
【问题描述】:

我正在使用 asp.net oledb 将信息导出到 excel 文件。当要导出的信息变得太大时,我遇到了问题,在这种情况下,我在下面给出的代码中,生成的 excel 文件变成了一个空的电子表格。

如果我将循环更改为 1123 以插入行。生成的excel文件很好,显示了1125行4列。

无论有多少行,Windows 形式的测试程序也可以正常工作。

代码已经简化,sql插入命令中的“信息...”代表1803个字符。

ExcelObjConn = "Provider=Microsoft.Ace.OLEDB.12.0;" & _
                 "Data Source=" & fileName & ";Extended Properties=Excel 12.0 XML"
    ExcelConnection = New System.Data.OleDb.OleDbConnection(ExcelObjConn)
    ExcelConnection.Open()
Try
        SqlCommand = "CREATE TABLE ABC ([row1] text, [row2] text, [row3] text, [row4] text)"

        ExcelCommand = New OleDb.OleDbCommand(SqlCommand, ExcelConnection)
        ExcelCommand.ExecuteNonQuery()
        ExcelCommand.Dispose()

        For i As Integer = 0 To 1124
            SqlCommand = "Insert into ABC ([row1], [row2], [row3], [row4]) Values ('information...', 'information ...', 'information ...', 'information ...')"
 ExcelCommand = New OleDb.OleDbCommand(SqlCommand, ExcelConnection)
            ExcelCommand.ExecuteNonQuery()
            ExcelCommand.Dispose()
        Next
Catch ex As Exception
Finally
If ExcelConnection IsNot Nothing Then
      ExcelConnection.Close()
      ExcelConnection.Dispose()
End If
End Try

我该怎么办?谢谢。

解决方法

您好,我也找不到解决问题的方法。我最终所做的是使用另一个单独的 Windows 服务运行该进程。该代码在 Windows 窗体或服务程序上运行得非常好,但不是 asp.net,不知道为什么。希望此解决方法有所帮助。

【问题讨论】:

    标签: asp.net vb.net excel oledb


    【解决方案1】:
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-04
    相关资源
    最近更新 更多