请阅读全文,然后将其标记为副本.
在我正在调试的项目中,我收到一个SqlException,上面写着:
附加信息:成功地与服务器建立了连接,但在登录前握手时发生了错误。(提供者: SSL提供程序,错误:0-等待操作超时。)
这是在调试会话期间发生的,在调试会话中,前一个会话仅在几秒钟前执行,没有问题。由于初始异常,我无法连接到此项目中的数据库服务器。在SqlConnection.Open()方法调用.上抛出异常
背景
这不是我第一次收到这封信。在此之前,我与它进行了两周的斗争,最终启动了微软的支持票。在该实例中,它发现连接字符串上的ApplicationName属性太长(我们使用的是完全限定的程序集名称),缩短它可以缓解问题。
这一次,有
最后,出于一时兴起,我创建了一个新项目,其唯一目的是连接到同一台SQL服务器。我将连接字符串从不工作的项目复制到新项目中,并将其连接起来。每一个项目的连接缓存都在进行吗?在Clean>Rebuild和Visual和Windows的重新启动中幸存下来的东西吗?
相关守则
public SqlConnection OpenSqlConnection(string connectionString)
{
var conn = new SqlConnection(connectionString);
conn.Open();
_connectionString = connectionString;
var sb = new SqlConnectionStringBuilder(_connectionString);
_server = sb.DataSource;
_database = sb.InitialCatalog;
return conn;
}正在传入的连接字符串是从应用程序中其他地方的SqlConnectionStringBuilder输出的。连接字符串类似于:"Data Source=SERVER;Initial Catalog=DATABASE;Integrated Security=True;Connect Timeout=60"
发布于 2018-06-11 20:26:54
对我来说,诀窍是增加连接字符串上的超时,因为通过vpn连接需要很长时间才能建立连接。您可以通过添加;连接超时=值来实现这一点。
当我在vpn上连接一个试图连接到sql服务器的应用程序时,我也遇到了同样的错误。
默认情况下,超时设置为15秒。
看来你已经有60秒了,也许你只是需要更多.
希望能帮上忙!
https://stackoverflow.com/questions/43597294
复制相似问题