C# 无法通过System.Data.SqlClient进行连接

C# 无法通过System.Data.SqlClient进行连接,c#,.net,sql,oledb,C#,.net,Sql,Oledb,我遇到了一个非常奇怪的问题,到目前为止,我在网上找不到任何相关的解决方案 一个客户机有一个新的Windows 2008 R2(64位)服务器,我们要求在其中安装SQL server 2008 R2 我们在服务器上安装了我们的软件,该服务器通过System.Data.SqlClient连接到SQL2008,没有任何问题。 但是,当安装在远程计算机上时,该软件无法连接到SQL2008。我们得到一个超时异常。 注意,我们开发了一个通过OLEDB连接的测试项目,它似乎可以在远程机器上工作。这意味着,当使

我遇到了一个非常奇怪的问题,到目前为止,我在网上找不到任何相关的解决方案

一个客户机有一个新的Windows 2008 R2(64位)服务器,我们要求在其中安装SQL server 2008 R2

我们在服务器上安装了我们的软件,该服务器通过System.Data.SqlClient连接到SQL2008,没有任何问题。 但是,当安装在远程计算机上时,该软件无法连接到SQL2008。我们得到一个超时异常。 注意,我们开发了一个通过OLEDB连接的测试项目,它似乎可以在远程机器上工作。这意味着,当使用OLEDB连接时,我们可以从远程计算机连接到数据库,而当使用System.Data.SqlClient时,我们无法连接到数据库


有什么想法吗?

在我们公司的网络中也有同样的问题(OLEDb工作-SQLClient没有)。我通过在防火墙规则中添加端口1433(TCP)解决了这个问题

如果是错误40-NamedPipes问题,请在SQL配置管理器(本机配置->客户端协议)中检查是否启用了命名管道

另外,请检查-不要忘记阅读注释(那些MSSQL2005连接问题通常也适用于SQL2008实例…)

问候


Therak

你能发布你的连接字符串吗?在掩盖了重要信息后偏离了航线。标题有误导性。正确的标题应该是“无法通过System.Data.SqlClient连接”。如果管理员看到此情况,请编辑标题。提前感谢您有完整的确切消息/堆栈跟踪吗?Therak关于为SQL server打开端口的提示实现了神奇的效果。我在网上搜索了一下,找到了一个为SQLServer打开所有端口的脚本,问题就解决了。谢谢你们的回复,伙计们。仅供参考,脚本如下:嗯,看来我不能发布整个脚本。如果有人想要,请告诉我。