我有一个程序可以将数据从 Excel 导入数据集。要连接到 Excel,我使用以下代码...
return new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" +
fileName + "; Jet OLEDB:Engine Type=5;"+ "Extended Properties=\"Excel 8.0;\"");
我刚买了一台装有 Excel 2010 的新电脑,现在连接尝试失败并抛出异常,提示 'Microsoft.Jet.OLEDB.4.0' 提供程序未在本地计算机上注册
这是因为新版本的 Excel 需要不同的连接字符串吗?有人遇到过这个吗?
编辑: 实际上,我只是在某处读到,使用 System.Data.OleDbClient 类甚至不需要在计算机上安装 Excel。所以我的问题可能与 Excel 无关,而与 Microsoft.Jet 工具有关。我的电脑运行的是 Windows7 64 位。不是应该已经安装了吗?
最佳答案
查看 Microsoft Access Database Engine 2010 Redistributable .
其他 Excel 版本的可再发行组件也存在。
关于c# - 如何从 C# 连接到不同版本的 Excel?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3537696/