问题描述
我目前正在开发一个 Excel 导入/导出实用程序,该实用程序利用现有的 OleDB 代码进行导入过程,电子表格是使用 Open Office XML 生成的。到目前为止,生成的电子表格格式正确,并且在 Microsoft Excel 2019 中打开没有问题。但出于某种原因,当尝试导入数据时,OleDB 立即抛出异常并失败,并显示异常消息“系统资源超出”。然而,我发现一个奇怪的解决方法是在 Microsoft Excel 2019 中打开电子表格,然后保存它,然后尝试导入它。这表明我在生成电子表格时做错了什么。
这是一些相关的代码:
const query = "Select TOP 25 * from [Sheet1$]";
var ds = new DataSet();
var connectionString = $"Provider=Microsoft.Ace.OLEDB.12.0;Data Source={fileName};Extended Properties=\"Excel 12.0;HDR=YES;IMEX=1\"";
using (var con = new OleDbConnection(connectionString))
using (var adpt = new OleDbDataAdapter(query,con))
{
adpt.Fill(ds,"[Sheet1$]"); // Exception occurs here
}
DataTable table = ds.Tables[0];
return table;
这是我使用 Open Office XML Sheet 编写类生成的示例电子表格的 LINK。我不想将所有代码复制到这个问题中,因为它相当冗长。如有必要,我愿意发布。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)