0

I have a web service that touches oracle database.

I use the ODP.net oracle data provider. I believe the actual assembly is called Oracle.DataAccess.dll.
Well, while everything works fine on my local machine, when I promote to server, I always get this exception...

Oracle.DataAccess.Client.OracleException: The provider is not compatible with the version of Oracle client

I have tried multiple things including attempting to force my service to use a current DLL...

<configSections>
   <section name="oracle.dataaccess.client" type="System.Data.Common.DbProviderConfigurationHandler, System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</configSections>

  <oracle.dataaccess.client>
    <settings>
      <add name="DllPath" value="C:\WebSites\xxxx.yyy.zzz\OracleDllBinNewbin\Oracle.DataAccess.dll" />
    </settings>
  </oracle.dataaccess.client>
SoftwareSavant
  • 8,456
  • 26
  • 107
  • 186
  • Does any of this help ? http://stackoverflow.com/questions/659341/the-provider-is-not-compatible-with-the-version-of-oracle-client – A.B.Cade Feb 12 '13 at 14:21
  • maybe... I will give some of it a shot. I will obviously need to de-GAC any Oracle.DataAccess dll's – SoftwareSavant Feb 12 '13 at 15:56

1 Answers1

0

While running local, you are likely running in a 32 bit/x86 process (Visual Studio itself is x86 host). When you run on the server, it turns into an x64 process.

From what I understand, the Oracle Data Client dll is either x86, or x64 unlike MS dll's that hold "Any CPU" which allows the Dll to flip seamlessly between the two.

Force your hosting application on your local machine to execute in X64 (Project Properties, Build), and see what happens.

I'm still trying to figure out how to flip between reference between local workstation and service, an your little xml snippet just gave me a clue!

codeputer
  • 1,854
  • 2
  • 18
  • 43
  • Glad I could help out. But What I did to resolve this issue was I re-installed the Oracle.Databaces Dll's across all servers, after identifying what dll I was using on my local machine. – SoftwareSavant Oct 11 '13 at 00:54
  • My issue was two fold. 1) I did not install the full oracle client on the server, as well as add the tsunamis, 2) I only used the x86 driver on both my workstation as well as the sever. – codeputer Oct 12 '13 at 14:14