我很明显地被困在这里。 我有一个与Oracle和MSSQL服务器通信的应用程序。
他们两个都构建了他们的连接字符串然后
try
{
connection.Open();
} catch ...
现在,如果我输入错误的服务器名称,SQL Server连接将超时,我将很乐意处理异常。但是C#中的Oracle连接似乎不支持超时,所以我将永远不会从connection.Open()返回,我的应用程序将挂起。
我发现了一些类似的问题,但事实并非如此,因为答案与我正在做的事情相同而且不起作用。
check connection from C# app to oracle 10g database
这是一些奇怪的错误还是应该检查我的Oracle库?说到哪个OracleConnection已经过时了,我应该使用别的东西(虽然我不愿意)
所以我需要的是一种尽可能容易处理错误服务器名称的方法。
编辑1:现在我想到的是在不同的线程中运行connection.Open()并在超时时杀死它。