下面的代码可以正确读取本地计算机上的dbf文件,但是当部署到Windows Server 2012r2时,它会引发异常:
错误 [IM002] [Microsoft][ODBC 驱动程序管理器] 数据源名称不 找到且未指定默认驱动程序
try
{
OdbcConnection obdcconn = new OdbcConnection();
//obdcconn.ConnectionString = "Driver={Microsoft dBase Driver (*.dbf)};SourceType=DBF;SourceDB=" + strTempDirectory + "\;Exclusive=No; NULL=NO;DELETED=NO;BACKGROUNDFETCH=NO;";
obdcconn.ConnectionString = "Driver={Microsoft dBase Driver (*.dbf)};SourceType=DBF;SourceDB=" + strTempDirectory + "\";
obdcconn.Open();
System.Data.Odbc.OdbcCommand oCmd = obdcconn.CreateCommand();
oCmd.CommandText = "SELECT * FROM " + Path.Combine(strTempDirectory, tempFileName); // Specify full path including dbf filename with extension
AVSNAssignmentDetails = new DataTable();
AVSNAssignmentDetails.Load(oCmd.ExecuteReader());
obdcconn.Close();
ErrorLogger.LogActivity(string.Format("t - Dbf data retrived successfully for file {0} of ClaimNumber: {1}", fileInfo.Name, _strClaimNumber), _strActivityLogFileName);
}
catch (Exception ex)
{
}
我发现服务器上没有安装 odbc 驱动程序,所以我安装了ODBC Driver 13 for SQL Server
但仍然收到相同的错误。
当启用应用程序池到 32 位应用程序时,它的工作原理如下: https://www.codeproject.com/Tips/305249/ERROR-IM-Microsoft-ODBC-Driver-Manager-Data-sou