HOWTO Run multiple versions of ODP.NET side by side in multiple applications
Last updated on JULY 05, 2017
Applies to:Oracle Data Provider for .NET - Version: 10.2.0.2.20
Microsoft Windows (32-bit)
Microsoft Windows x64 (64-bit)
.NET application security dictates that an application will only run with the version of an assembly it was compiled with. In order to allow for the use of newer patched assemblies without recompiling the application, the publisher of an assembly can provide a Publisher Policy file that redirects applications looking for an older version to a newer version.
By default, ODP.NET installs Publisher Policy files into the Global Assembly Cache (GAC) during product installation. As a result, installing a newer version of ODP.NET for use with a new "application B" just developed may also inadvertently make existing "application A" also use the newer version, which may or may not be the desired behavior.
Some notes regarding the policy files and redirection:
- ODP.NET does not provide Publisher Policy files that redirect across framework versions.
- When adding a new client home, the most recent ODP.NET installation blindly registers its Publisher Policy files in the GAC, which may overwrite previous policy files that existed which covered the same versions, so applications that previously were redirected to a newer ODP.NET version may be redirected to an older version in some cases.
- Using the Oracle Home Selector to select a new primary home will re-register Oracle.DataAccess.dll in the GAC, but will not re-register the Publisher Policy files with that home.
- ODP.NET versions prior to 10.2.0.2.20 relied on the PATH environment variable for dependency loading. 10.2.0.2.20 and higher use the DLLPATH configuration setting to control where the client dependencies are loaded from.
Sign In with your My Oracle Support account
Don't have a My Oracle Support account? Click to get started
My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms