这个问题可以看起来像其他人的克隆,但我找不到这个问题的正确答案。 这是我的场景: 我有一个需要写入到oracle数据库的webservices调用的C#软件。 在我的测试服务器没有问题,它就像一个魅力,但对另服务器它给我这个错误:Oracle.DataAccess.Client.OracleException在Connection.Open()
Oracle.DataAccess.Client.OracleException at Oracle.DataAccess.Client.OracleException.HandleErrorHelper(Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, OpoSqlValCtx* pOpoSqlValCtx, Object src, String procedure, Boolean bCheck, Int32 isRecoverable) at Oracle.DataAccess.Client.OracleException.HandleError(Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, Object src) at Oracle.DataAccess.Client.OracleConnection.Open()
在没有其他消息。 我认为这是一个错误安装Oracle客户端,但是,我写来测试Oracle连接另一个小应用程序的工作原理:
var connectionString = ConfigurationManager.AppSettings["connectionString"];
using (OracleConnection nwindConn = new OracleConnection(connectionString))
{
nwindConn.Open();
Console.WriteLine("opened");
}
的ConnectionString:
Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=thisdatabase.thisinstance)(PORT=1521))(LOAD_BALANCE=yes)(FAILOVER=on)(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=serv)(FAILOVER_MODE=(TYPE=SESSION)(METHOD=BASIC)(RETRIES=180)(DELAY=5))));User ID=myuser;Password=mypsw;
所以,这个问题,我觉得是在应用程序配置中,但为什么在其他服务器上工作? 我试图编辑项目和解决方案调试平台配置,但问题仍然存在..任何建议?
我建议发布connectionstring。随意删除安全数据.... – Steve
打开连接和写入是不同的动物。扩展你的测试项目来插入一些数据,看看你是否得到相同的错误。 – paqogomez
@paqogomez:但错误是在连接打开,所以我需要先解决这个问题。 – SamDroid