I have an application that uses the local version of ODAC 11 under the directory of the .exe file. The idea is that we want our application to use local ODAC 11, regardless of what the user has installed the machine on it.
Oracle.DataAccess.dll is located in the same directory as .exe.
It works fine when the Oracle client is not installed on the client computer, but I get an error message when I start on the computer with Oracle Database 10.2.0.something installed:
The type initializer for 'Oracle.DataAccess.Client.OracleConnection' threw an exception. [Stack Trace] The provider is not compatible with the version of Oracle client OracleException at Oracle.DataAccess.Client.OracleInit.Initialize() at Oracle.DataAccess.Client.OracleConnection..cctor()
I assume this has something to do with the run-time binding policy, but Google's search for “Oracle / ODAC / ODP.NET run-time binding policy” didn’t bring anything useful.
Does anyone know how to solve a problem?
If this is not a problem, can someone tell me how to do what I want to do: make sure my application uses ODAC 11 no matter what?
source share