[英]SqlException takes too long to appear
我正在测试一种方法来更改我的app.config文件的连接字符串,然后检查连接是否正确。
问题是,当连接字符串无效或找不到服务器时,大约需要10秒钟才能引发异常。
这正常吗?
我的项目包含一个Windows窗体应用程序,用C#和SQL Server Express表示。 该服务器位于我的本地网络内的本地计算机中。 我已经在服务器计算机上尝试了相同的代码,并且延迟是相同的。
private void boton1_Click(object sender, EventArgs e)
{
using(SqlConnection con=new SqlConnection(connectionStringsSection.ConnectionStrings["Default"].ConnectionString))
{
con.Open();
}
}
如SqlConnectionStringBuilder的C#文档所概述的那样,连接超时是可以根据您的特定需要进行配置的。 根据他们在本地计算机上的示例代码,它将显示默认超时为15秒,但是您可以根据需要进行设置。 也许在您的用例中,超时为1秒就可以了,因为您知道连接是本地的,不需要更长的等待时间。 但是,任何外部连接都应具有更大的超时窗口,以解决路由问题,服务器负载等问题。
SqlConnectionStringBuilder类具有许多可以在这方面有所帮助的属性,但是我在下面概述了一些特定于您的情况的属性:
var csb = new SqlConnectionStringBuilder
{
ConnectionString = connectionStringsSection.ConnectionStrings["Default"].ConnectionString,
ConnectRetryCount = 0,
ConnectRetryInterval = 0,
ConnectTimeout = 0
};
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.