我在不同的项目中工作,我的一个项目使用Visual Studio 2010,另一个使用VS 2017,另一个使用2015。
VS 2010
我已经安装了ODACT with ODT 11.2
它的工作正常。但是VS 2015和2017需要ODAC with ODT 12.2+
所以我在我的机器上安装了12.2,并且在VS 2010解决方案edmx更新之后根本不起作用。
这就是我得到的视觉工作室活动日志
<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>
我已经尝试了几种方法来解决此问题。
- 为两个安装使用了不同的预言机主页
- 从
GAC
中删除了odp.net
相关的策略。 - 编辑
machine.config
并更改了 odac 版本
但没有任何效果。
注意:在这两个安装中,我都使用了机器范围的安装。
将 12.2+ 版本安装为非计算机范围。
将Oracle.ManagedDataAccess.Client
移至 GAC。( 以管理员身份运行 VS 2010 命令提示符,然后使用 gacutil -i "Oracle Managed Access.client DLL 的路径
然后打开命令提示符 cd 到主目录路径(odac 12.2 安装路径(。例:
C:appclientArunprasanthproduct12.1.0client_1odp.netmanagedx86>
然后运行以下命令
oraProvCfg.exe /action:config /product:odpm /frameworkversion:v4.0.30319 /productversion:4.121.2.0
注意:上述步骤将在您的 machine.config 中创建一个条目。
现在您可以在VS 2010和2015中使用ODT