ASP.NET应用程序无法找到或连接到64位Oracle驱动程序的DSN,但未找到错误的数据源名称

时间:2016-03-25 08:50:01

标签: asp.net .net oracle odbc iis-7.5

我开发了ASP.Net应用程序,它通过DSN连接使用ODBC连接到Oracle数据库。 一切都在我的本地开发环境中工作,但在我部署到IIS后,它无法连接到数据库&记录以下错误。

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

然后我开始寻找解决方案&尝试下面的东西,但没有任何效果。

  1. 检查应用程序是使用Platform Any CPU开发的。

  2. 配置DSN&使用Oracle客户端64位ODBC数据源进行测试连接。在64位服务器上,DSN可配置为64位& 32位也是。

  3. 尝试在apppool身份用户的注册表中为DSN设置权限。
  4. 尝试将AppBool设置为启用32Bit应用程序为True,在这种情况下,它会给出另一个错误,即ODBC&应用程序架构不匹配。
  5. 如果有更多替代方案,请告诉我,否则我想安装32位oracle客户端&尝试使用32位ODBC DSN进行连接。

    提前感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

发现此链接非常有帮助。 https://support.microsoft.com/en-in/kb/942976 它说明了32位和32位DSN连接的可见性。 64位应用程序。 尝试小测试实用程序(winform)& 32bit&的行为可以区分64位应用程序。 但无法找到ASP.Net应用程序的解决方案。

答案 1 :(得分:0)

我使用X64平台构建了代码&然后在IIS中部署它。 我正在使用11.2.0客户端,因此它开始读取DSN,但 算术运算导致溢出 异常。这是驱动程序需要安装补丁的问题。 https://blogs.msdn.microsoft.com/mariae/2012/07/05/arithmetic-operation-resulted-in-an-overflow-error-running-a-report-that-uses-a-connection-data-source-to-oracle-10/