当我点击 source.Open(); 时出现此错误 一行代码,我不知道为什么。我使用的是非托管 dll,我正在尝试升级到 Oracle.ManagedDataAccess.dll 64 位版本,我的项目正在使用 .NET 框架 4。TNS 字符串在生产 tnsnames.ora 文件中工作(我已经替换了各种元素名称和值)。从错误看来,显然应该是错误的,但我无法让它工作。
app.config 中的 TNS:
<oracle.manageddataaccess.client>
<version number="*">
<dataSources>
<dataSource alias="ABC_DEF_GH" descriptor="ABC_DEF_GH = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = server.company.com)(PORT = 11111))(CONNECT_DATA = (SERVICE_NAME = ABC_DEF_GH.company.com)))"/>
</dataSources>
</version>
</oracle.manageddataaccess.client>
代码片段:
using (OracleConnection source = new OracleConnection("UserId=xxxxx;Password=xxxxxx;DataSource=ABC_DEF_GH;"))
{
OracleCommand command = new OracleCommand(transferConfig.QueryLogic + WhereClause, source);
//The time (in seconds) to wait for the command to execute. The default is 30 seconds.
command.CommandTimeout = transferConfig.SourceCommandTimeout;
// command.Connection.ConnectionTimeout is set in the connection string only
source.Open();
//...
}
错误:ORA-00303:网络库:名称-值语法错误