Rest Service中的MS Access DB连接错误

时间:2016-10-24 16:53:59

标签: c# asp.net rest ms-access oledbconnection

我正在尝试使用C#代码连接REST API / Webmethods中的网络/共享驱动器中可用的ms访问db(mdb / accdb文件)。如果我使用控制台应用程序但是如果在Rest API中使用则抛出连接错误,即使用Rest API(VS 2013)进行调用,相同的代码工作正常。

例外:

System.Runtime.InteropServices.SEHException (0x80004005): External component has thrown an exception.

System.Runtime.InteropServices.SEHException was unhandled by user code
  HResult=-2147467259
  Message=External component has thrown an exception.
  Source=System.Data
  ErrorCode=-2147467259

代码:

 string connectionString = @"Provider=Microsoft.ACE.OLEDB.12;" + @"Data Source=\\network folder\Shared\filesecure.mdb;Jet OLEDB:Database Password=somepassword;Persist Security Info=true;";

using (OleDbConnection oledbConnection = new OleDbConnection(connectionString))
{

connection.Open(); // Getting exception here
}

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

我在上述回复的帮助下解决了这个问题

服务正在运行x64位,需要安装AccessDatabaseEngine_x64.exe驱动程序。我的机器上有32位的办公室。

其他步骤

一个。首先从HKLM \ SOFTWARE \ Microsoft \ Office \ 14.0 \ Common \ FilesPaths

中的注册表中删除mso.dll条目

湾使用命令提示符从您的设置位置

安装AccessDatabaseEngine_x64.exe / passive / quiet