Forum Discussion
BizTalk 2020 WCF-OracleDB adapter Error
-----
https://docs.microsoft.com/en-us/biztalk/adapters-and-accelerators/post-installation-steps-for-biztalk-adapter-pack-2016#use-a-newer-oracledataaccessdll-version
-----
<dependentAssembly>
<publisherPolicy apply="no" />
<assemblyIdentity name="Oracle.DataAccess" publicKeyToken="89b483f429c47342" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-65535.65535.65535.65535" newVersion="4.122.19.1" />
<!--<bindingRedirect oldVersion="0.0.0.0-65535.65535.65535.65535" newVersion="4.122.18.3" /> -->
</dependentAssembly>
</assemblyBinding>
</runtime>
<system.data>
<DbProviderFactories>
<add name="Oracle Data Provider for .NET" invariant="Oracle.DataAccess.Client" description="Oracle Data Provider for .NET" type="Oracle.DataAccess.Client.OracleClientFactory, Oracle.DataAccess, Version=4.122.19.1, Culture=neutral, PublicKeyToken=89b483f429c47342" />
<!--<add name="Oracle Data Provider for .NET" invariant="Oracle.DataAccess.Client" description="Oracle Data Provider for .NET" type="Oracle.DataAccess.Client.OracleClientFactory, Oracle.DataAccess, Version=4.122.18.3, Culture=neutral, PublicKeyToken=89b483f429c47342" />-->
</DbProviderFactories>
</system.data>
------
I would also make sure to update to the latest BizTalk 2020 CU (CU2 currently) as there were some updates related to Oracle adapter after initial RTM release.
I hope this helps.
- harik98May 30, 2023Copper Contributor
Hi
I tried the suggestions given here.
Still i am stuck with following error:
“Could not load file or assembly 'Oracle.DataAccess, Version=4.122.18.3, Culture=neutral, PublicKeyToken=89b483f429c47342' or one of its dependencies.
The system cannot find the file specified. (Microsoft.Adapters.OracleDB)”
Any suggestions on this?
Tx
Hari
- NiklasEMay 30, 2023
Microsoft
harik98 I would suggest to restart uninstalling previous attempts/unGAC and try the latest 19c unmanaged XCopy client.
https://www.oracle.com/database/technologies/net-downloads.htmlOracle XCopy unmanaged .NET client installation :
If not default location (ORACLE_HOME\network\admin), create a System Environment Variable for :
Name: TNS_ADMIN
Path (change to your location) : c:\oracle\network\admin\
CD C:\Oracle\Setup-19x-32bit
:: Install all to 32-bit folder, 32-bit home name. You can omit the last TNS_ADMIN location parameter if using the default location
install.bat all c:\oracle\ora19c32 ora19c32 true true c:\oracle\network\admin
CD c:\oracle\ora19c32
:: Uninstall 32-bit ORAMTS since we will use the 64-bit ORAMTS and you can only have one ORAMTS running.
uninstall.bat ORAMTS ora19c32
CD C:\Oracle\Setup-19x-64bit
install.bat all c:\oracle\ora19c64 ora19c64 true true c:\oracle\network\admin
:: Then manually add these paths to Path System environment variable
c:\oracle\ora19c64
c:\oracle\ora19c32
:: check GAC
gacutil /l | find /I "4.12"
Oracle.DataAccess, Version=4.122.19.1, Culture=neutral, PublicKeyToken=89b483f429c47342, processorArchitecture=AMD64
Oracle.DataAccess, Version=4.122.19.1, Culture=neutral, PublicKeyToken=89b483f429c47342, processorArchitecture=x86
Oracle.ManagedDataAccess, Version=4.122.19.1, Culture=neutral, PublicKeyToken=89b483f429c47342, processorArchitecture=MSIL
:: Add AssemblyRedirect in BizTalk .config files and mmc.exe.config for it to use the latest client
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Oracle.DataAccess" publicKeyToken="89b483f429c47342" culture="neutral" />
<bindingRedirect oldVersion="4.0.0.0-4.65535.65535.65535" newVersion="4.122.19.1" />
</dependentAssembly>
</assemblyBinding>
</runtime>
- NareshDevallaJun 02, 2023Copper Contributor
harik98 Don't use regular VS cmd to GAC the dlls. You should install dll with: oraprovcfg.exe /action:gac /providerpath:Oracle.DataAccess.dll that supplies to put dll in gac and change machine.config.
- NareshDevallaOct 07, 2021Copper Contributor
Thank you NiklasE , I will check this and let you know.