Build & Run Issues Related To Oracle.DataAdapter.DLL Versioning

Oct 3, 2008 at 11:08 PM
I've been attempting to build this source code with different versions of Oracle data adapter DLL's. So far, I have only been able to get this source to successfully build with 10.2.0.4 x64 version of the DLL, or newer (11g x86 or x64 versions succeed). The strange thing is I have tried to build the code with 10.2.0.4 x86 DLL, and I get about 139 errors, I pasted a copy of a few of them below. This is exactly same setup, with no modifications, other than changing the DLL, that builds successfully with x64 10.2.0.4 DLL. I obviously don't have much Oracle application development experience, but it seems to me hard to believe there would be a difference in the interfaces from the x86 version of the same release vs. the x64 version. Oh, and BTW, if it might matter, this is in VS2008 with .NET 3.5 FW.

Build Errors Excerpt:
-----------------------------------------------
------ Rebuild All started: Project: WFTools.Services.Odp, Configuration: Debug Any CPU ------
C:\Windows\Microsoft.NET\Framework\v3.5\Csc.exe /noconfig /nowarn:1701,1702 /errorreport:prompt /warn:4 /define:DEBUG;TRACE /reference:..\..\..\bin\release\Oracle.DataAccess.dll /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\v3.5\System.Core.dll" /reference:C:\Windows\Microsoft.NET\Framework\v2.0.50727\System.Data.dll /reference:C:\Windows\Microsoft.NET\Framework\v2.0.50727\System.dll /reference:C:\Windows\Microsoft.NET\Framework\v2.0.50727\System.Transactions.dll /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\v3.0\System.Workflow.ComponentModel.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\v3.0\System.Workflow.Runtime.dll" /reference:C:\Windows\Microsoft.NET\Framework\v2.0.50727\System.Xml.dll /reference:D:\PRO\Source\Pro-WIP\ThirdParty\WFTools\v0.3a\Resources\bin\Debug\WFTools.Resources.dll /reference:D:\PRO\Source\Pro-WIP\ThirdParty\WFTools\v0.3a\Services\bin\Debug\WFTools.Services.dll /debug+ /debug:full /optimize- /out:obj\Debug\WFTools.Services.Odp.dll /target:library ..\GlobalAssemblyInfo.cs OdpResourceProvider.cs OdpValueReader.cs Persistence\OdpPersistenceNameResolver.cs Properties\AssemblyInfo.cs Tracking\OdpTrackingNameResolver.cs Tracking\OdpTrackingResourceAccessor.cs
D:\WFTools\v0.3a\Services.Odp\Tracking\OdpTrackingResourceAccessor.cs(108,50): error CS0030: Cannot convert type 'System.Data.Common.DbCommand' to 'Oracle.DataAccess.Client.OracleCommand'
D:\WFTools\v0.3a\Services.Odp\Tracking\OdpTrackingResourceAccessor.cs(137,17): error CS1502: The best overloaded method match for 'WFTools.Services.Tracking.Ado.AdoTrackingResourceAccessor.AddParameter(System.Data.Common.DbCommand, string, object, WFTools.Services.Common.Ado.AdoDbType)' has some invalid arguments
D:\WFTools\v0.3a\Services.Odp\Tracking\OdpTrackingResourceAccessor.cs(137,30): error CS1503: Argument '1': cannot convert from 'Oracle.DataAccess.Client.OracleCommand' to 'System.Data.Common.DbCommand'
etc....
---------------------------------------------


I've tried building the code with 10.2.0.1 x86 DLL, 10.2.0.3 x86 DLL, 10.2.0.4 x86 DLL, all produce the same errors. I can successfully build with 10.2.0.4 x64 DLL, 11.1.0.6 x86 DLL and 11.1.0.6 x64 DLL.

I can build the code with the 10.2.0.4 x64 DLL, and run it on Vista x64 with 11g x64 Client installed, and run it on WinXP x86 11g client installed. I can not run it on WinXP x86 with any 10g client installed.

Does this ring true for anyone else, or can anyone help educate me as to what I might be doing wrong? I've had four of my coworkers try building the code on their WinXP x86 systems with all versions of the DLL's, with identical results.

I appreciate any help.

-Chip

Coordinator
Oct 22, 2008 at 2:53 PM
Edited Oct 22, 2008 at 2:53 PM
Hi Chip,

Can you check the properties of the 10.2 DLL you're referencing and make sure it has a version number of 2.102.2.x?

If it has a version of 1.102.2.x then you're actually referencing the .NET 1.x version of the DLL. System.Data.Common.DbCommand was new to .NET 2.0 so wouldn't have been implemented by the 1.x version of OracleCommand!

My apologies for the slow reply, regards,

Dean

Oct 22, 2008 at 3:25 PM
Does this mean it should compile and run with any version of 10g .NET 2.x ? 10.2.0.1 for instance? I'll take a look at the DLL versions again. I'm almost positive I've tried compiling 2.102.0.1 thru 2.102.0.3, with all failing.
Thank you for your help.
-Chip


From: deanward
To: cteague3@yahoo.com
Sent: Wednesday, October 22, 2008 7:53:13 AM
Subject: Re: Build & Run Issues Related To Oracle.DataAdapter.DLL Versioning [WFTools:37012]

From: deanward

Hi Chip,

Can you check the properties of the 10.2 DLL you're referencing and make sure it has a version number of 2.102.2.x?

If it has a version of 1.102.2.x then you're actually referencing the .NET 1.x version of the DLL. System.Data.Common.DbCommand was new to .NET 2.0 so wouldn't have been implemented by OracleCommand!

My apologies for the slow reply, regards,

Dean