使用Microsoft.Jet.OLEDB.4.0连接导入Excel工作表时出错

时间:2012-10-12 06:33:54

标签: c# asp.net oledbconnection

我是asp.net的新手

我在IIS上运行我的Web应用程序时出现以下错误,我在xp-64位和window-7上尝试了此代码

 'Microsoft.Jet.OLEDB.4.0' provider is not registered on the local machine. 

当我在“http:// localhost:1464 / Default.aspx”这样的端口上运行时,它运行正常

我正在使用以下代码

OleDbCommand excelCommand = new OleDbCommand();
OleDbDataAdapter excelDataAdapter = new OleDbDataAdapter();
string path = Server.MapPath(filename);
string excelConnStr = "provider=Microsoft.Jet.OLEDB.4.0;data source='" + path + "';Extended Properties='Excel 8.0; HDR=Yes; IMEX=1'";

OleDbConnection excelConn = new OleDbConnection(excelConnStr);
excelConn.Open();

2 个答案:

答案 0 :(得分:0)

您需要将应用程序池配置为32位模式。检查this

答案 1 :(得分:0)

尝试这种方法可能有所帮助 - >将csv / excel文件复制到应用程序目录中(在应用程序目录下创建一个文件夹并向ASP net用户授予权限) - >然后将此新路径提供给连接字符串