繁体   English   中英

SqlException需要太长时间才能出现

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM