oracle-databasevisual-studioodp.netodacodt

How to install both ODAC 11.2 and 12.2 in a machine?


I am working in different projects and one of my project is using Visual Studio 2010 and another one using VS 2017 and another one using 2015.

For VS 2010 I have installed ODACT with ODT 11.2 its working fine. But VS 2015 and 2017 needs ODAC with ODT 12.2+ so I have installed 12.2 in my machine and there after VS 2010 solution edmx update is not at all working.

This is what the Visual Studio Activity log I am getting

 <record>330</record>
    <time>2019/04/03 08:11:41.598</time>
    <type>Information</type>
    <source>VisualStudio</source>
    <description>Begin package load [Oracle Developer Tools for Visual Studio]</description>
    <guid>{D601BB95-E404-4A8E-9F24-5C1A462426CE}</guid>
  </entry>
  <entry>
    <record>331</record>
    <time>2019/04/03 08:11:41.598</time>
    <type>Error</type>
    <source>VisualStudio</source>
    <description>CreateInstance failed for package [Oracle Developer Tools for Visual Studio]</description>
    <guid>{D601BB95-E404-4A8E-9F24-5C1A462426CE}</guid>
    <hr>80070002</hr>
    <errorinfo>Could not load file or assembly 'Oracle.VsDevTools.10.0, Version=4.112.3.20, Culture=neutral, PublicKeyToken=89b483f429c47342' or one of its dependencies. The system cannot find the file specified.</errorinfo>
  </entry>
  <entry>
    <record>332</record>
    <time>2019/04/03 08:11:41.614</time>
    <type>Error</type>
    <source>VisualStudio</source>
    <description>End package load [Oracle Developer Tools for Visual Studio]</description>
    <guid>{D601BB95-E404-4A8E-9F24-5C1A462426CE}</guid>
    <hr>80004005 - E_FAIL</hr>
    <errorinfo>Could not load file or assembly 'Oracle.VsDevTools.10.0, Version=4.112.3.20, Culture=neutral, PublicKeyToken=89b483f429c47342' or one of its dependencies. The system cannot find the file specified.</errorinfo>
  </entry>
  <entry>

I have tried couple of methods to fix this issue.

  1. Used different oracle home for both installations
  2. Removed odp.net related Policies from GAC.
  3. Edited machine.config and changed the odac versions

But nothing is working.

Note : In Both installations I used machine wide installation.


Solution

  • Install 12.2+ versions as non machine wide.

    Move the Oracle.ManagedDataAccess.Client to GAC.( Open VS 2010 command prompt as Run as administrator. then using gacutil -i "path to oracle managedaccess.client dll")

    Then Open command prompt cd to the home directory path (odac 12.2 installed path). Example :

    C:\app\client\Arunprasanth\product\12.1.0\client_1\odp.net\managed\x86>
    

    Then run the following command

    oraProvCfg.exe /action:config /product:odpm /frameworkversion:v4.0.30319 /productversion:4.121.2.0
    

    Note : The above step will create an entry into your machine.config.

    Now you can use ODT in both VS 2010 and 2015