Asp.net Can';无法从web应用程序连接到数据库文件

Asp.net Can';无法从web应用程序连接到数据库文件,asp.net,vb.net,odbc,jet,dbase,Asp.net,Vb.net,Odbc,Jet,Dbase,我有一个10年前编写的web应用程序(VB.NET/ASP)。 它使用以下连接字符串连接到dBase 5文件: Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277;Dbq=[SOURCE_PATH]; 这几年来一直很有效。 现在,我们正在将此应用程序移动到64位服务器,此连接现在为我提供了 ERROR [IM002] [Microsoft][ODBC Driver Manager] Data source name not found an

我有一个10年前编写的web应用程序(VB.NET/ASP)。
它使用以下连接字符串连接到dBase 5文件:

Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277;Dbq=[SOURCE_PATH];
这几年来一直很有效。 现在,我们正在将此应用程序移动到64位服务器,此连接现在为我提供了

ERROR [IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified
我在许多线程中阅读了许多建议,包括将上面的连接字符串更改为

Microsoft.Jet.OLEDB.4.0; or Microsoft.Jet.OLEDB.12.
但那没用

我还尝试将web服务器上应用程序池上的Enable32位应用程序设置设置设置为TRUE,但结果是

HTTP Error 503. The service is unavailable

谁能给我指一下正确的方向吗

尝试从更改连接字符串

Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277;Dbq=[SOURCE_PATH];


您还必须将代码从ODBC对象(数据集等)更改为OLEDB对象。

您的应用程序是32位还是64位?几乎可以肯定的是,你的驱动程序只有32位版本,所以你的应用程序需要32位才能使用它,如果从ODBC连接字符串切换到OLE DB连接字符串,则必须将所有ADO.NET对象从
ODBC
更改为
OleDb
,但仍然没有64位版本的Jet。该应用程序是32位的。这正是我所需要的!这两个步骤结合起来解决了我的问题,谢谢!!!
Driver={Provider=Microsoft.ACE.OLEDB.12.0;Data Source=[SOURCE_PATH];Extended Properties=dBASE 5.0;}