C#:DBConnection.Open()超时太长

时间:2010-03-23 13:31:19

标签: c# sql

我正在尝试连接到用户输入的服务器。当服务器不存在时,我想向最终用户提供快速反馈,以便他能够更正他输入的内容。

在尝试连接之前,有没有办法测试服务器是否存在?

由于

4 个答案:

答案 0 :(得分:2)

您的DBConnection是否具有ConnectionTimeout属性?尝试将此设置为较小的数字。

答案 1 :(得分:1)

DbConnection中的ConnectionTimeout属性没有setter。它等了15秒。您需要在连接字符串中指定超时。 "连接超时"在连接字符串中是以秒为单位。

string connStr = "Data Source=(local);Initial Catalog=AdventureWorks;" +
                 "Integrated Security=SSPI;Connection Timeout=5";

答案 2 :(得分:0)

您可以使用SQL Server Management Objects(SMO)获取SQL Server列表。有一个如何获取服务器列表here的示例。服务器的枚举可能需要一段时间,但您可以随时在应用程序加载时在后台启动它,以便在用户需要选择服务器时就绪。

答案 3 :(得分:0)

您可以随时ping服务器或检查某个端口是否已打开]但这并不能保证此服务器在连接到真实服务器之前不会脱机。