次のコードを実行しようとすると、プログラムが無期限にハングします。理由はわかりませんが、この件に関しては他にも未回答のトピックがあるようです。ただし、IP\Web サイトに到達できない場合は、意図したとおりに機能します。
private void DoStuff()
{
string connectionString = "Data Source=www.google.com;Connection Timeout=5";
using (SqlConnection connection = new SqlConnection(connectionString))
{
connection.Open(); //Hangs here indefinitely
Console.WriteLine("Test");
}
}
たとえば、接続文字列を
connectionString = "Data Source=www.nonexistentsite.com;Connection Timeout=5";
その後、例外がスローされます。アクティブなサイトに対して例外をスローするにはどうすればよいですか? ...また、 Googleは明らかにテスト目的のためだけです。
編集 :
到達できないサーバー名または IP アドレスに接続しようとすると、この例外が発生します...
A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)
アップデート :
プログラムをしばらく実行させた後、通常は 3 ~ 5 分後に最終的にタイムアウトになり、上記のエラーが表示されます。どうすればタイムアウトを早くすることができますか?