无法连接到Excel文件作为数据源

我正在做一个旧的(约2004年)ASP.NET 2.0应用程序。 一项function是允许用户通过Excelfile upload数据。 之前做过这些(虽然有了更新的技术),但我觉得这很简单。

我遇到的问题是我无法使用Excel文件作为数据源,无论我使用什么提供程序。

我能够连接到SQL Server数据库就好了。

我遇到的第一个问题是当我试图通过OleDB连接。 每次我尝试连接,我收到一个错误。

我正在运行64位W7,并安装了32位的办公室(无法更改,工作笔记本电脑)。

我尝试的连接string是

Provider=Microsoft.ACE.OLEDB.12.0; DataSource='{0}'; Extended Properties='HDR=YES;' Provider=Microsoft.ACE.OLEDB.12.0; DataSource='{0}'; Extended Properties='Excel 12.0 Xml;HDR=YES;' Provider=Microsoft.ACE.OLEDB.12.0; DataSource='{0}'; Extended Properties='HDR=YES;' Provider=Microsoft.JET.OLEDB.4.0; DataSource='{0}'; Extended Properties='Excel 12.0 Xml;HDR=YES;' Provider=Microsoft.ACE.OLEDB.12.0; DataSource='{0}'; Extended Properties='HDR=YES;' Provider=Microsoft.JET.OLEDB.4.0; DataSource='{0}'; Extended Properties='Excel 12.0 Xml;HDR=YES;' 

我收到的错误是

 The 'Microsoft.ACE.OLEDB.12.0' provider is not registered on the local machine. 

我做了一些研究,发现人们试图解决这个问题的几种不同的方式,从下载2007年访问驱动程序,2010年,通过C:\Windows\SysWow64\odbcad32.exe添加它,并build立在x86模式的应用程序(不'不pipe怎么说,不知道为什么)。 所有这些都导致了相同的错误。

然后我尝试通过ODBC连接以下连接string

 Driver={{Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)}};DBQ='{0}'; 

然后我得到了一个新的错误,即

 ERROR [IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified 

做了一些研究,我回到了以前的相同的决议。

我注意到的一个有趣的事情是,当我从SysWOW64文件夹和System32文件夹运行odbcad32.exe时,我得到了不同的结果。 当我从x64文件夹运行它时,我在User DSN下看到了Excel文件和Access数据库。 为了安全起见,我将两者都添加到了System DSN ,并且在Drivers选项卡下看到他们也在那里。

但是,当我在System32文件夹下运行它时,我像之前一样在“ User DSN选项卡下看到它们,但我无法configuration它们。 当我尝试时,我得到以下错误:

 The setup routines for the Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb) ODBC driver could not be found. Please reinstall the driver. Errors Found: The specified DSN contains and architecture mismatch between the Driver and the Application 

如果我尝试添加它在System DSN选项卡下,唯一可用的是

  • ODBC驱动程序11 for SQL Server
  • SQL Server
  • SQL Server Native Client 11.0

并且Excel / Access驱动程序不显示在Drivers选项卡下,只有那些3。

我还有什么可以尝试? 我也无法使用第三方库。