【发布时间】:2017-10-08 03:10:58
【问题描述】:
我不是 Oracle 人员,需要从 Visual Studio 中使用它。我为 Visual Studio 2015 安装了 Oracle 数据工具,但无法收到一些奇怪的错误消息。第一次启动 VS 并尝试添加新连接(任何连接)时,我收到消息:
已安装适用于 .NET 的 Oracle 数据提供程序,但未安装 机器范围的配置。但是,Oracle 数据提供程序的一个版本 已在全局程序集缓存中检测到 for .NET,这可能是 不相容。请从 .NET 中删除 Oracle 数据提供程序 全局程序集缓存并重新启动 Visual Studio。
这很奇怪,因为我只是按照消息所说的做了。下次启动VS,又弹出错误。
如果我确定该消息,我会收到另一条消息:
未能找到默认的 tnsnames.ora。无法加载类型 来自程序集的 OracleInternal.Common.ConfigBaseClass' Oracle.ManagedDataAccess,版本=4.121.2.0,文化=中性, PublicKeyToken=89b483f429c47342
我完全不确定这是什么意思。
有什么想法吗?
更新:
没有创建 tnsnames.ora(不知道如何创建)。我错过了安装步骤吗? (不记得被提及)。在我的机器配置中:
<section name="oracle.dataaccess.client" type="System.Data.Common.DbProviderConfigurationHandler, System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
在 user.config 文件中找不到 Oracle。 dll信息:
C:\Program Files (x86)\Microsoft Visual Studio 14.0>gacutil /l Oracle.ManagedDat
aAccess
Microsoft (R) .NET Global Assembly Cache Utility. Version 4.0.30319.0
Copyright (c) Microsoft Corporation. All rights reserved.
The Global Assembly Cache contains the following assemblies:
Oracle.ManagedDataAccess, Version=4.121.2.0, Culture=neutral, PublicKeyToken=8
9b483f429c47342, processorArchitecture=MSIL
此时没有 .NET 配置文件。在 VS 中我只是想连接服务器资源管理器
【问题讨论】:
-
主帖中的发现
-
这不匹配。您复制/粘贴
oracle.dataaccess但在 GAC 中查询“Oracle。ManagedDataAccess” -
好的,感谢您指出这一点。我不确定那是什么意思。我天真地期望 odt 开箱即用。现在我不知道我需要做什么。我希望它能够在不成为 Oracle DBA 的情况下工作。
-
您是否在 .NET 配置文件中检查了
/configuration/oracle.manageddataaccess.client/version/settings/setting/@name=TNS_ADMIN的值?它是否显示您的tnsnames.ora文件存储的文件夹。要创建tnsnames.ora文件,请咨询您的 DBA。 -
是的,确实如此,而且 tnsnames.ora 就在那里。
标签: oracle visual-studio-2015 dataprovider