首页 > 解决方案 > 从 SQLite 切换到 SQL Server?

问题描述

我正在尝试在基本的 .NET 5.0 应用程序上简单地从 SQLite 切换到 Microsoft SQL Server,以进行本地测试。

我在 Windows 10 上运行linuxVisual Studio Code 上的子外壳。

我已经安装了 Microsoft SQL Server、SQL Server Configuration Manager 以及 SQL Server Management Studio。

我通过 SSMS 创建了一个名为wmsDB.

在我的 Visual Studio Code 连接字符串中,我有以下内容:

"ConnectionStrings": {
    "DefaultConnection": "Server=DESKTOP-P24QHEM\\SQLEXPRESS;Database=wmsDB;Trusted_Connection=True;MultipleActiveResultSets=true"
}

每次我运行dotnet run并尝试通过电子邮件和密码注册时,都会收到以下错误:

失败:Microsoft.EntityFrameworkCore.Database.Connection[20004]
在服务器“DESKTOP-P24QHEM\SQLEXPRESS”上使用与数据库“wmsDB”的连接发生错误。

失败:Microsoft.EntityFrameworkCore.Query[10100]
迭代上下文类型“miniwms.Data.ApplicationDbContext”的查询结果时发生异常。

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

我不确定我做错了什么 - 我尝试了一些服务器名称的变体,我希望能解决它,但我仍然每次都遇到这个问题。

标签: c#sqlsql-server

解决方案


如果您尝试从 Linux 连接,则必须使用 TCP/IP。默认情况下 SQLEXPRESS 没有启用它。使用 SQL Server 配置管理器启用它并将 SQL 实例设置为侦听固定端口。如果您没有安装任何其他 SQL Server 实例,请使用 1433,因为它是默认值。


推荐阅读