Det er muligt at tvinge din applikation til altid at bruge den ODP- og ODAC-version, du ønsker.
-
Force ODP-version:brug assemblyBinding-tricket indsendt af Robert, for at tvinge din version af Oracle.DataAccess i stedet for GAC'd-versionen. F.eks.:
<configuration> <runtime> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <dependentAssembly> <assemblyIdentity name="Oracle.DataAccess" culture="neutral" publicKeyToken="89b483f429c47342"/> <codeBase version="4.112.3.0" href="FILE://Oracle.DataAccess.dll"/> </dependentAssembly> </assemblyBinding> </runtime> </configuration>
-
Force ODAC-version:ODP DLL'en afhænger af et sæt delte Oracle-komponenter (øjeblikkelig klient, ikke-administrerede OCI-dll'er). En måde at få disse på er via ODAC-pakken. Du kan definere (per app-basis), hvilken ODAC-pakke du vil bruge. Traditionelt blev dette gjort via PATH env-variablen, men den kan nu defineres via config:
<configuration> <configSections> <section name="oracle.dataaccess.client" type="System.Data.Common.DbProviderConfigurationHandler, System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> </configSections> <oracle.dataaccess.client> <settings> <add name="DllPath" value="C:\somefolder\ODAC_11.2.0.3.0_32bit\bin" /> </settings> </oracle.dataaccess.client> </configuration>
-
Som en ekstra sikkerhedsforanstaltning kan du altid slette GAC'd's udgiverpolitik DLL for at sikre, at der aldrig sker noget sjovt.