Visual studio 2017默认从oracle开发者工具vs2017的安装路径读取tnsnames.ora文件。
有一个选项可以搜索,然后复制并用计算机中的不同 ora 文件替换上述默认位置中的 tns 文件。但这样做的问题是,这种情况下需要维护多个tns文件(因为其他oracle软件从oracle客户端安装路径读取tns文件)。
有没有办法改变VS2017读取的默认tnsnames.ora路径? (TNS_ADMIN 和 Path 环境变量已配置。)
我不明白你的问题。只需从
c:\Program Files (x86)\Oracle Developer Tools for VS2017\network\admin
中删除 tnsnames.ora 文件(只需猜测文件夹名称),VS 就会从您在“其他位置”中指定的位置获取它。
或者
c:\Program Files (x86)\Oracle Developer Tools for VS2017\network
admin
mklink /d "c:\Program Files (x86)\Oracle Developer Tools for VS2017\network\admin" "c:\app\client\...\product\12.2.0\client_1\network\admin"
我发现我在 Visual Studio 2017 的这一步中遇到了问题,它试图将其 tnsnames.ora 存储在不存在的目录中,所以我寻找并发现你可以通过 machine.config 更改它。
您需要首先打开 RegEdit 并获取您正在使用的驱动程序的版本号(托管或非托管),您可以通过浏览 oracle 目录来完成此操作:
计算机\HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\ODP.NET.Managed .122.1.0
我的版本是4.122.1.0,然后我将其放在以下位置:
<oracle.manageddataaccess.client>
<version number="4.122.1.0">
<settings>
<setting name="TNS_ADMIN"value="C:\app\client\612851311\product\12.2.0\client_1\Network\Admin" />
</settings>
</version>
</oracle.manageddataaccess.client>
您需要将其添加到您正在使用的 .net 框架版本中的 machine.config 中,对我来说是:
C:\Windows\Microsoft.NET\Framework64 4.0.30319\Config
我希望这有帮助,是的,您可能想按照建议使用符号链接,因为您不需要重复的文件,或者您可能只想将其更改为您需要的目录。
重新启动你的机器,你应该就好了。