繁体   English   中英

VS2017上的SQL Server连接超时

[英]SQL Server connection timeout on VS2017

我有一个控制台应用程序正在做一个标准:

new SqlConnection("<connection string>").Open()

但是超时(最终)超时:

System.Data.SqlClient.SqlException(0x80131904):建立与SQL Server的连接时发生与网络相关或特定于实例的错误。 服务器未找到或无法访问。 验证实例名称是否正确,以及SQL Server是否配置为允许远程连接。 (提供者:TCP提供者,错误:0 - 等待操作超时。)---> System.ComponentModel.Win32Exception(0x80004005):等待操作超时

尝试打开与(Azure托管的)SQL Server 12实例的连接时。 我无法确定导致问题的原因,如:

  1. 它只发生在VS2017中。 VS2015运行完全相同的代码。
  2. 我可以通过SSMS,LINQPad和同一解决方案中的ASP.NET项目连接数据库(即使使用2017年)也没有问题。
  3. 连接超时设置为30秒。
  4. 它仅在以调试模式运行时发生。
  5. 连接到本地数据库时也会发生这种情况。

.NET 4.5.2,VS15.0.0,Win10

任何想法都赞赏,我不知道是什么导致了这一点。

编辑:似乎已经开始工作了。 我不确定为什么,但可能升级到VS15.1就可以了。 谢谢大家的建议。

只是在黑暗中拍摄,但你是一个在家工作的顾问吗? 我今天开始对我发生了同样的事情,但是,我甚至没有证实它仍然可以在VS2015或Linqpad中使用。 我首先检查我是否仍然连接到VPN并且我的连接没有丢失。

即使你已经连接,我也只有一次发生这种情况,因为我从这里开始,但VPN说我连接了,我可以到达鳄梨但不是COSMOS或任何文件共享。 这就像一个半连接的状态,我不得不断开连接并重新连接几次以摆脱它。 我还从VPN连接中清除了我保存的凭据。

也许尝试这些,看看这有帮助吗? 如果没有,请在弄清楚后告诉我。 谢谢!

您正在使用Azure主机,请尝试以下方法:

1)首先检查您是否与2017年内的数据库连接

从vs2017内部,显示Server explorer(menu-> view-> server explorer)

你找到一个有天蓝色节点的树。

配置与azure(sql server)的连接并连接到数据库。

如果成功连接,请查看生成的连接字符串(它是否不同?在您的应用程序中使用它)

成功连接意味着:没有阻止防火墙,它独立于调试/发布模式或应用程序类型:console / web / ....并且连接字符串有效

2)在调试模式下生成两个可执行程序,在释放模式下生成第二个。

直接使用连接字符串(不从配置文件中读取它(以隔离问题的根)。

在您的开发环境(运行vs 2017)和其他计算机(没有安装vs 2017)中运行两个控制台应用程序。

记录你的发现。

请确保,在源代码中不会在调试模式下使用可能影响连接的编译标志。

3)审查以下帖子,可能有所帮助:

Azure SQL数据库连接异常(抛出System.Data.SqlClient.SqlException)

Azure异常详细信息:System.Data.SqlClient.SqlException:用户'null'登录失败

让我知道1和2的结果

3)最后一步(在ADO.NET中使用数据跟踪)

如果在应用方法1或2时出现异常,我们可能必须使用ado.net中的数据跟踪来发现魔法:),如下所述: https ://docs.microsoft.com/en-us/dotnet/framework/data / ADONET /数据跟踪

您可以尝试或检查以下任何一项:

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

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