Skip to Main Content

ODP.NET

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

WcfService in x64 using ODP.NET x64 fails (.NET 4.5 and 4.0)

kiquenetMar 28 2014

Hi,

I have Windows 8.1 64 bit, VS 2012 32 bit , IIS 8.5, IIS Express 32 bit, WcfService project Target Framework: .NET 4.5 - ImageRuntimeVersion: v4.0.30319

Service .NET 4.5 hosted in IIS 8.5 -> References Oracle.DataAccess.dll  ProcessorArchitecture: Amd64 Version: 4.121.1.0


ERROR executing OracleConnection.Open


Oracle.DataAccess.Client.OracleException     at Oracle.DataAccess.Client.OracleException.HandleErrorHelper(Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, OpoSqlValCtx* pOpoSqlValCtx, Object src, String procedure, Boolean bCheck, Int32 isRecoverable)

   at Oracle.DataAccess.Client.OracleException.HandleError(Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, Object src)

   at Oracle.DataAccess.Client.OracleConnection.Open()

Error for WcfService project with AnyCpu and WcfService project with x64

I test too using DllPath in section oracle.dataaccess.client and I get the same error

The same service NET 4.5 hosted now in IISExpress (x86)  -> References Oracle.DataAccess.dll  ProcessorArchitecture: X86 Version: 4.121.1.0

OK executing OracleConnection.Open

Any suggestions ? how can I debug it or get logs about ODP.NET, and get solution ? is it possible?

I test again using Target Framework: .NET 4.0, and I get the same error (CLR 4.0 - v4.0.30319 the same for .NET 4.0 and 4.5)

  <oracle.dataaccess.client>

    <settings>

    

      <!-- For X64 -->

      <!--<add name="DllPath" value="C:\app\Reale\product\12.1.0\client_1\bin"  />-->

      <!-- For X86 -->

      <!--<add name="DllPath" value="C:\app\Reale\product\12.1.0\client_2\bin"  />-->

    

    </settings>

  </oracle.dataaccess.client>

Full logs

Test Name: Obtener_datos_de_OdpNet_con_servicio_AnyCPU_hosted_en_IIS

ERROR select sysdate from dual

Oracle.DataAccess.Client.OracleException     at Oracle.DataAccess.Client.OracleException.HandleErrorHelper(Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, OpoSqlValCtx* pOpoSqlValCtx, Object src, String procedure, Boolean bCheck, Int32 isRecoverable)

   at Oracle.DataAccess.Client.OracleException.HandleError(Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, Object src)

   at Oracle.DataAccess.Client.OracleConnection.Open()

*** LOG ***

Environment Data:

ProcessName: w3wp

Is64BitOperatingSystem: True

Is64BitProcess: True

SystemConfigurationFile: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\config\machine.config

ConfigurationFile: C:\TFS\Main\MyCompany.Lite.Frk\Net4.0\Tests\Apps\WcfService\web.config

MainModule.FileName: c:\windows\system32\inetsrv\w3wp.exe

MainModule.ModuleName: w3wp.exe

BaseDirectory: C:\TFS\Main\MyCompany.Lite.Frk\Net4.0\Tests\Apps\WcfService\

ApplicationBase: C:\TFS\Main\MyCompany.Lite.Frk\Net4.0\Tests\Apps\WcfService\

FriendlyName: /LM/W3SVC/2/ROOT-2-130404614116233936

ApplicationName: c36153ea

Assembly Data:

Location: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\2090c609\c36153ea\assembly\dl3\92d3ec19\79a8efa4_4d4acf01\MyCompany.Lite.Frk.Data.Tests.WcfServiceLibrary.dll

ProcessorArchitecture: MSIL

Referenced Assemblies of MyCompany.Lite.Frk.Data.Tests.WcfServiceLibrary

          mscorlib - None      Location C:\Windows\Microsoft.NET\Framework64\v4.0.30319\mscorlib.dll - Amd64

          System - None        Location C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System\v4.0_4.0.0.0__b77a5c561934e089\System.dll - MSIL

          System.Core - None        Location C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Core\v4.0_4.0.0.0__b77a5c561934e089\System.Core.dll - MSIL

          Oracle.DataAccess - None       Location C:\Windows\Microsoft.Net\assembly\GAC_64\Oracle.DataAccess\v4.0_4.112.2.0__89b483f429c47342\Oracle.DataAccess.dll - Amd64

          System.Data - None        Location C:\Windows\Microsoft.Net\assembly\GAC_64\System.Data\v4.0_4.0.0.0__b77a5c561934e089\System.Data.dll - Amd64

          System.ServiceModel - None     Location C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.ServiceModel\v4.0_4.0.0.0__b77a5c561934e089\System.ServiceModel.dll - MSIL

          MyCompany.Lite.Data - None         Location C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\2090c609\c36153ea\assembly\dl3\08991152\90904b1f_c349cf01\MyCompany.Lite.Data.dll - MSIL

          Microsoft.Practices.EnterpriseLibrary.Data - None        Location C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\2090c609\c36153ea\assembly\dl3\261813e9\c453c0e2_d648cf01\Microsoft.Practices.EnterpriseLibrary.Data.dll - MSIL

          System.Runtime.Serialization - None       Location C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Runtime.Serialization\v4.0_4.0.0.0__b77a5c561934e089\System.Runtime.Serialization.dll - MSIL

Oracle.DataAccess Data:

Assembly: Oracle.DataAccess, Version=4.121.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342

AssemblyQualifiedName: Oracle.DataAccess.Client.OracleConnection, Oracle.DataAccess, Version=4.121.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342

Module.FullyQualifiedName: C:\Windows\Microsoft.Net\assembly\GAC_64\Oracle.DataAccess\v4.0_4.121.1.0__89b483f429c47342\Oracle.DataAccess.dll

Location: C:\Windows\Microsoft.Net\assembly\GAC_64\Oracle.DataAccess\v4.0_4.121.1.0__89b483f429c47342\Oracle.DataAccess.dll

ProcessorArchitecture: Amd64

Version: 4.121.1.0

FullName: Oracle.DataAccess, Version=4.121.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342

GlobalAssemblyCache: True

PortableExecutableKinds: ILOnly, PE32Plus

ImageFileMachine: AMD64

Creating connnection using Oracle.DataAccess.Client.OracleConnection to MyCompany.ConnectionStrings.Oracle.MYSCHEMA

Connnection False

TestOdpNetConnection using Oracle.DataAccess. Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=SERVERDB)(PORT=1523))(CONNECT_DATA=(SID=oas1d)));User Id=XXXXX;Password=XXXXX;

Oracle.DataAccess. Abriendo conexión a Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=SERVERDB)(PORT=1523))(CONNECT_DATA=(SID=oas1d)));User Id=XXXXX;Password=XXXXX;

TestOdpNetConnection. Error en la conexión.

Msg: Oracle.DataAccess.Client.OracleException     at Oracle.DataAccess.Client.OracleException.HandleErrorHelper(Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, OpoSqlValCtx* pOpoSqlValCtx, Object src, String procedure, Boolean bCheck, Int32 isRecoverable)

   at Oracle.DataAccess.Client.OracleException.HandleError(Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, Object src)

   at Oracle.DataAccess.Client.OracleConnection.Open()

   at MyCompany.SourceRepository.OdpNetHelper.TestOdpNetConnection(String connectionString, String& trace) in c:\TFS\Main\MyCompany.Lite.Frk\Net4.0\Tests\Apps\WcfServiceLibrary\Common\OdpNetHelper.cs:line 60

Creating connnection using OdpNetDataContext to MyCompany.ConnectionStrings.Oracle.MYSCHEMA

ConnectionString: DATA SOURCE=MyDataSource;PASSWORD=XXXX;PERSIST SECURITY INFO=True;USER ID=MYSCHEMA

Database: data source=MyDataSource;persist security info=true;

DbProviderFactory: Oracle.DataAccess.Client.OracleClientFactory

Executing ExecuteNonQuery

Test Name: Obtener_datos_de_OdpNet_con_servicio_AnyCPU

Test Outcome:   Passed

Result StandardOutput:   

TestContext Messages:

Result:

OK

*** LOG ***

Environment Data:

ProcessName: iisexpress

Is64BitOperatingSystem: True

Is64BitProcess: False

SystemConfigurationFile: C:\Windows\Microsoft.NET\Framework\v4.0.30319\config\machine.config

ConfigurationFile: C:\TFS\Main\MyCompany.Lite.Frk\Net4.0\Tests\Apps\WcfService\web.config

MainModule.FileName: C:\Program Files (x86)\IIS Express\iisexpress.exe

MainModule.ModuleName: iisexpress.exe

BaseDirectory: C:\TFS\Main\MyCompany.Lite.Frk\Net4.0\Tests\Apps\WcfService\

ApplicationBase: C:\TFS\Main\MyCompany.Lite.Frk\Net4.0\Tests\Apps\WcfService\

FriendlyName: /LM/W3SVC/3/ROOT-5-130404614413883655

ApplicationName: 6e9d8358

Assembly Data:

Location: C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\9aada5e4\6e9d8358\assembly\dl3\12388fd2\79a8efa4_4d4acf01\MyCompany.Lite.Frk.Data.Tests.WcfServiceLibrary.dll

ProcessorArchitecture: MSIL

Referenced Assemblies of MyCompany.Lite.Frk.Data.Tests.WcfServiceLibrary

          mscorlib - None      Location C:\Windows\Microsoft.NET\Framework\v4.0.30319\mscorlib.dll - X86

          System - None        Location C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System\v4.0_4.0.0.0__b77a5c561934e089\System.dll - MSIL

          System.Core - None        Location C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Core\v4.0_4.0.0.0__b77a5c561934e089\System.Core.dll - MSIL

          Oracle.DataAccess - None       Location C:\Windows\Microsoft.Net\assembly\GAC_32\Oracle.DataAccess\v4.0_4.112.2.0__89b483f429c47342\Oracle.DataAccess.dll - X86

          System.Data - None        Location C:\Windows\Microsoft.Net\assembly\GAC_32\System.Data\v4.0_4.0.0.0__b77a5c561934e089\System.Data.dll - X86

          System.ServiceModel - None     Location C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.ServiceModel\v4.0_4.0.0.0__b77a5c561934e089\System.ServiceModel.dll - MSIL

          MyCompany.Lite.Data - None         Location C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\9aada5e4\6e9d8358\assembly\dl3\7ec82898\90904b1f_c349cf01\MyCompany.Lite.Data.dll - MSIL

          Microsoft.Practices.EnterpriseLibrary.Data - None        Location C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\9aada5e4\6e9d8358\assembly\dl3\f06f5054\c453c0e2_d648cf01\Microsoft.Practices.EnterpriseLibrary.Data.dll - MSIL

          System.Runtime.Serialization - None       Location C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Runtime.Serialization\v4.0_4.0.0.0__b77a5c561934e089\System.Runtime.Serialization.dll - MSIL

Oracle.DataAccess Data:

Assembly: Oracle.DataAccess, Version=4.121.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342

AssemblyQualifiedName: Oracle.DataAccess.Client.OracleConnection, Oracle.DataAccess, Version=4.121.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342

Module.FullyQualifiedName: C:\Windows\Microsoft.Net\assembly\GAC_32\Oracle.DataAccess\v4.0_4.121.1.0__89b483f429c47342\Oracle.DataAccess.dll

Location: C:\Windows\Microsoft.Net\assembly\GAC_32\Oracle.DataAccess\v4.0_4.121.1.0__89b483f429c47342\Oracle.DataAccess.dll

ProcessorArchitecture: X86

Version: 4.121.1.0

FullName: Oracle.DataAccess, Version=4.121.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342

GlobalAssemblyCache: True

PortableExecutableKinds: ILOnly, Required32Bit

ImageFileMachine: I386

Creating connnection using Oracle.DataAccess.Client.OracleConnection to MyCompany.ConnectionStrings.Oracle.MYSCHEMA

Connnection True

TestOdpNetConnection using Oracle.DataAccess. Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=SERVERDB)(PORT=1523))(CONNECT_DATA=(SID=oas1d)));User Id=XXXXX;Password=XXXXX;

Oracle.DataAccess. Abriendo conexión a Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=SERVERDB)(PORT=1523))(CONNECT_DATA=(SID=oas1d)));User Id=XXXXX;Password=XXXXX;

Oracle.DataAccess.OracleConnection State:  Open

Oracle.DataAccess.OracleConnection ServerVersion:  11.2.0.3.0

Oracle.DataAccess.OracleConnection DataSource:  (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=SERVERDB)(PORT=1523))(CONNECT_DATA=(SID=oas1d)))

Oracle.DataAccess.OracleConnection ServiceName:  sys$users

Oracle.DataAccess.OracleConnection InstanceName:  oas1d

Oracle.DataAccess.OracleConnection HostName:  SERVERDB

Oracle.DataAccess.OracleConnection DatabaseName:  oas1d

Oracle.DataAccess.OracleConnection DatabaseDomainName:  null

Conectado True y cerrando conexión

Creating connnection using OdpNetDataContext to MyCompany.ConnectionStrings.Oracle.MYSCHEMA

ConnectionString: DATA SOURCE=MyDataSource;PASSWORD=xxxxxx;PERSIST SECURITY INFO=True;USER ID=MYSCHEMA

Database: data source=MyDataSource;persist security info=true;

DbProviderFactory: Oracle.DataAccess.Client.OracleClientFactory

Executing ExecuteNonQuery

Result: -1 para select sysdate from dual

My environment:

I use Windows 8.1 64 bits.

I use VS 2012 Ultimate 32bit

I have installed:

64-bit ODAC 11.2 Release 3 (11.2.0.2.1) Xcopy for Windows x64

Location: C:\app\Company\odp.net\bin\2.x\Oracle.DataAccess.dll - ProcessorArchitecture: Amd64

Location: C:\app\Company\odp.net\bin\4\Oracle.DataAccess.dll - ProcessorArchitecture: Amd64

ODAC 11.2 Release 3 (11.2.0.2.1)

Location: C:\app\Company\product\11.2.0\client_2\odp.net\bin\2.x\Oracle.DataAccess.dll - ProcessorArchitecture: X86

Location: C:\app\Company\product\11.2.0\client_2\odp.net\bin\4\Oracle.DataAccess.dll - ProcessorArchitecture: X86

64-bit ODAC 12c Release 2 (12.1.0.1.2) for Windows x64

Location: C:\app\Company\product\12.1.0\client_1\odp.net\bin\2.x\Oracle.DataAccess.dll - ProcessorArchitecture: Amd64

Location: C:\app\Company\product\12.1.0\client_1\odp.net\bin\4\Oracle.DataAccess.dll  - ProcessorArchitecture: Amd64

ODAC 12c Release 2 (12.1.0.1.2) and Oracle Developer Tools for Visual Studio

Location: C:\app\Company\product\12.1.0\client_2\odp.net\bin\2.x\Oracle.DataAccess.dll - ProcessorArchitecture: X86

Location: C:\app\Company\product\12.1.0\client_2\odp.net\bin\4\Oracle.DataAccess.dll - ProcessorArchitecture: X86

TNSNames.ora in this paths:

C:\app\Company\Network\Admin

C:\app\Company\product\11.2.0\client_2\Network\Admin

C:\app\Company\product\12.1.0\client_1\Network\Admin

C:\app\Company\product\12.1.0\client_2\Network\Admin

In GAC, I have all these references:

Oracle.DataAccess 32bit - 2.112.2.0 - CLR 2.0

Oracle.DataAccess 32bit - 2.121.1.0 - CLR 2.0

Oracle.DataAccess 64bit - 2.112.2.0 - CLR 2.0

Oracle.DataAccess 64bit - 2.121.1.0 - CLR 2.0

Oracle.DataAccess 32bit - 4.112.2.0 - CLR 4.0

Oracle.DataAccess 32bit - 4.121.1.0 - CLR 4.0

Oracle.DataAccess 64bit - 4.112.2.0 - CLR 4.0

Oracle.DataAccess 64bit - 4.121.1.0 - CLR 4.0

Oracle.ManagedDataAccess    MSIL  - 4.212.1.0 - CLR 4.0

Oracle.ManagedDataAccessDTC 32bit - 4.212.1.0 - CLR 4.0

Oracle.ManagedDataAccessDTC 64bit - 4.212.1.0 - CLR 4.0


Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Apr 25 2014
Added on Mar 28 2014
0 comments
1,639 views