ASP.NET Core 7 MVC SQL 连接错误提供程序:命名管道提供程序,错误:40 - 无法打开与 SQL Server 的连接

问题描述 投票:0回答:2

我将 ASP.NET Core 7 MVC 项目从一台计算机移动到另一台计算机。我没有对代码进行任何更改。我也用同样的方式移动和恢复数据库。

但是,我无法打开我的项目并将其连接到 SQL Server。我收到错误:

Win32Exception:找不到网络路径。
未知地点

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

我认为数据库没有问题,因为我能够创建一个虚拟控制台应用程序并成功连接到数据库并检索数据。

我尝试了什么

  • 我检查了两台机器上的.net版本
  • 我检查了软件包的版本,卸载并重新安装。 尝试了不同的连接字符串

我认为问题出在应用程序中,因为当我尝试使用控制台应用程序时,我连接成功了

这是我的连接字符串:

"ConnectionStrings": {
    "db": "Server=localhost;Database=NIFBase;Trusted_Connection=True;"
}

项目包:https://imgur.com/a/4qR0AQ6

c# .net sql-server .net-core asp.net-core-mvc
2个回答
0
投票

将 SQL Server Management Studio 服务器名称提供给 appsetting.json

Server=SHADOW
(在此示例中)。还要确保添加
MultipleActiveResultSets=true
在连接字符串的末尾。

{
"ConnectionStrings": {
 "DefaultConnection":"Server=localhost;Database=NIFBase;Trusted_Connection=True;MultipleActiveResultSets=true"
  }
}

-1
投票

您面临连接问题

创建数据库用户来访问您的数据库 并使用这个连接字符串

"ConnectionString": "Server=[SQL_SERVER_INSTANCE];Initial Catalog=[DATABASE_NAME];Persist Security Info=False;
        User ID=[DATABASE_USER];Password=[PASSWORD];MultipleActiveResultSets=False;
        Encrypt=True;TrustServerCertificate=False;Connection Timeout=3600;",
© www.soinside.com 2019 - 2024. All rights reserved.