0

我已经使用正确的 TNS_ADMIN 设置(在 .NET 配置文件中)安装并配置了 Oracle.ManagedDataAccess 客户端。当我启用 Oracle 跟踪时,它会正确选择 TNS_ADMIN 设置,甚至列出 TNSNAMES.ORA 中的所有 TNS 条目。我在连接字符串中使用的 TNS 名称存在于跟踪输出中。

但是,当我尝试使用连接字符串中的 TNS 名称进行连接时(在“数据源=...;”部分),它仍然给我 ORA-12154(无法解析连接标识符)。我不确定我做错了什么...... Oracle 托管提供程序识别跟踪中的连接标识符。我还可以对任何问题的连接标识符进行 TNSPING,并且我的 Oracle 托管配置指向 TNSPING 使用的相同 TNSNAMES.ORA。

有任何想法吗?

谢谢!

4

1 回答 1

0

一种可能的解决方案是将 TNS 配置直接放在连接字符串中。

<connectionStrings>
    <add name="Default" connectionString="Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL = TCP)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SID=xe)));User Id=...;Password=...;" providerName="Oracle.DataAccess.Client" />
  </connectionStrings>
于 2015-04-22T13:55:23.853 回答