首页 > 解决方案 > 一个项目而不是另一个项目中的 C# WPF SQL 连接错误

问题描述

这让我很困惑。我正在尝试运行几行代码来连接到我们的 SQL Server 数据库,就像我以前做过很多次一样。在这个项目中,它只是失败了。如果我启动一个新的准系统 WPF (.net 4.8) 项目,以下代码可以完美运行。

SqlConnection cn = new SqlConnection("Data Source = SRVSQL03; Initial Catalog = PRODDATA; Persist Security Info = True; User ID = XXX; Password = XXX; TrustServerCertificate = True");
cn.Open();

var cmd = new SqlCommand("select top (1) name from Employee where active = 1 and EmployeeCode = @id", cn);
cmd.Parameters.AddWithValue("@id", int.Parse(Input));

cmd.CommandType = CommandType.Text;
SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
while (dr.Read())
{
    Console.WriteLine(dr[0]);
}

它在 cn.Open() 上超时:

建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确以及 SQL Server 是否配置为允许远程连接。(提供者:命名管道提供者,错误:40 - 无法打开与 SQL Server 的连接)

System.Data 版本

清洁/重建解决方案让我无处可去。我在想也许参考可能会在某处造成麻烦或一些碎片。也尝试删除并重建 obj 文件夹。

提前致谢

参考文献列表

标签: c#sql-serverwpf

解决方案


花了一段时间才弄清楚,但显然是从网络驱动器 (VPN) 运行代码导致了这个问题。可能在某处击中了内部防火墙。

直接从我的机器上运行的相同代码运行良好。


推荐阅读