【问题标题】:Oracle.DataAccess.dll connectivity failed for web applicationsWeb 应用程序的 Oracle.DataAccess.dll 连接失败
【发布时间】:2013-10-23 12:46:20
【问题描述】:

我在asp.net中开发web应用,我们使用Oracle 11g 64位服务器作为后端,通过以下代码连接失败:

我在64位编译环境下使用Visual Studio 2012(4.5),

我尝试过的:

我尝试连接 oracle 数据访问,将执行 Oracle db 连接的 dll,它连接到 Windows 应用程序,而尝试在 Web 应用程序上使用以下代码失败:

Imports System.Data
Imports Oracle.DataAccess.Client ' ODP.NET Oracle managed provider
Imports Oracle.DataAccess.Types

Public Class RafiqClass
    Public Sub Intm()
        Try
            Dim oradb As String = "Password=valuesol;Persist Security Info=True;User ID=system;Data Source=orcle"
            Dim conn As New OracleConnection(oradb)
            conn.Open()
            Dim cmd As New OracleCommand
            cmd.Connection = conn
            cmd.CommandText = "select department_name from departments where department_id = 10"
            cmd.CommandType = CommandType.Text
            Dim dr As OracleDataReader = cmd.ExecuteReader()
            dr.Read()
        Catch ex As Exception
            MsgBox(ex.Message)
        End Try
    End Sub
End Class

我已经为这个 dll 添加了参考和库创建,但它仍然不能用于 Web 应用程序

发生了什么错误:

尝试加载 oracle 客户端库引发了 badimageformatexception。安装32位oracle客户端组件在64位运行时会出现此问题。

欢迎任何解决此问题的指导。

提前致谢

【问题讨论】:

  • 那么,问题是:你安装了32位的oracle客户端吗?
  • @Steve nope 我预装了 64 位服务器,我没有安装 32 位 oracle 客户端
  • 您是否为 AnyCPU 作为目标平台编译了您的应用程序?如果您尝试切换到 x86 目标平台(如果可能),那些 32 位驱动程序应该可以工作。
  • @Steve 是的,我尝试使用 anyCPU 作为目标平台,但它没有工作,使用相应的 x64 它在 Windows 应用程序而不是 Web 应用程序中工作正常
  • 第一次尝试从 Web 服务连接到 Oracle 时,我必须让运行 IIS 的用户(通常是网络服务)访问 HD 上的 Oracle 文件夹。我尝试了几个小时来找到正确的文件夹和安全设置,但放弃了,只是给了它对整个文件夹的读/写访问权限。抱歉,我找不到确切的链接了。

标签: asp.net vb.net oracle dll oracle11g


【解决方案1】:

抱歉无法发表评论,所以我将发布作为答案。您的 ODP.Net 库是 32 位的,Web 应用程序需要 64 位才能运行。在 windows 环境下,您可以在 64 位环境下运行 64 位和 32 位应用程序,但在 IIS 中,您必须需要相同的环境库才能工作。

http://www.oracle.com/technetwork/database/windows/downloads/index-090165.html

【讨论】:

    【解决方案2】:
    猜你喜欢
    • 2021-12-06
    • 2012-11-06
    • 2013-11-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多