zoukankan      html  css  js  c++  java
  • Oracle-关于Oracle.ManagedDataAccess

    今天调用webservice的时候,运行程序后开始报错以下的错误信息

    “/”应用程序中的服务器错误。
    
    未能加载文件或程序集“Oracle.DataAccess”或它的某一个依赖项。试图加载格式不正确的程序。
    说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 
    
    异常详细信息: System.BadImageFormatException: 未能加载文件或程序集“Oracle.DataAccess”或它的某一个依赖项。试图加载格式不正确的程序。
    
    源错误: 
    执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。
    
    程序集加载跟踪: 下列信息有助于确定程序集“Oracle.DataAccess”无法加载的原因......。
    "

    然后百度上搞了很久,各种方法试遍了,最后尝试用了Oracle.ManagedDataAccess Oracle全托管驱动,添加到项目的引用中,再配置一下Web.config,大功告成了。
    下面贴上代码,以备以后需要。
      <configSections>
        <section name="oracle.manageddataaccess.client"
          type="OracleInternal.Common.ODPMSectionHandler, Oracle.ManagedDataAccess, Version=4.121.2.0, Culture=neutral, PublicKeyToken=89b483f429c47342"/>
      </configSections>
        <system.web>
            <compilation debug="true" targetFramework="4.0" />
        </system.web>
      <system.data>
        <DbProviderFactories>
          <remove invariant="Oracle.ManagedDataAccess.Client"/>
          <add name="ODP.NET, Managed Driver" invariant="Oracle.ManagedDataAccess.Client" description="Oracle Data Provider for .NET, Managed Driver"
            type="Oracle.ManagedDataAccess.Client.OracleClientFactory, Oracle.ManagedDataAccess, Version=4.121.2.0, Culture=neutral, PublicKeyToken=89b483f429c47342"/>
        </DbProviderFactories>
      </system.data>
      <runtime>
        <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
          <dependentAssembly>
            <publisherPolicy apply="no"/>
            <assemblyIdentity name="Oracle.ManagedDataAccess" publicKeyToken="89b483f429c47342" culture="neutral"/>
            <bindingRedirect oldVersion="4.121.0.0 - 4.65535.65535.65535" newVersion="4.121.2.0"/>
          </dependentAssembly>
        </assemblyBinding>
      </runtime>
      <oracle.manageddataaccess.client>
        <version number="*">
          <dataSources>
            <dataSource alias="SampleDataSource" descriptor="(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=ORCL))) "/>
          </dataSources>
        </version>
      </oracle.manageddataaccess.client>
    
    

    ORACLE全托管驱动Oracle.ManagedDataAccess.dll ,支持EF 支持分布式事务,连接数据库再也不需要安装oracle 客户端了,也不用区分32位,64位了。

    Oracle.ManagedDataAccess.dll下载地址:http://download.csdn.net/detail/w3800/7360331

     
  • 相关阅读:
    Hessian 服务端流程
    JSH面试感悟
    hibernate的update() 更新延迟或者无法更新,导致同个service调用存储过程执行方法不精确
    一个变量名引发的血案
    oracle for loop循环以及游标循环
    My97Datepicker 去掉 “不合法格式或超期范围”自动纠错限制
    获取前后n天的时间
    基于spring aop的操作日志功能
    为TIF、JPG图片添加地理坐标/平面直角坐标
    NGINX 中常规优化
  • 原文地址:https://www.cnblogs.com/handsomeso/p/5623146.html
Copyright © 2011-2022 走看看