如何在 ASP.NET Core 项目中指向完整的 SQL Server Express 数据库?

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

背景

我有一个现有项目,它是连接到本地 SQL Server Express 12 数据库的数据访问层。

我现在想在使用此数据库的同一解决方案中创建一个新的 ASP.NET Core 项目。我还想使用内置的用户身份验证,并将相关表添加到该数据库中。

我做了什么

我已成功创建 ASP.NET Core 项目,但它指向新创建的 (localdb)MSSQLLocalDB 而不是我的 SQL Server Express 数据库。我将 appsettings.json 中的连接字符串更改为:

"DefaultConnection": {
  "ConnectionString": "Server=MAIN-DESKTOP\\SQLEXPRESS;Database=ArbitrageSearch;Trusted_Connection=True;MultipleActiveResultSets=true"
}

我预计它会抱怨缺少表,但实际上应用程序继续访问(localdb)MSSQLLocalDB。

问题

如何指向现有的 SQL Express 数据库,然后如何初始化支持用户身份验证所需的表?

c# asp.net sql-server entity-framework
3个回答
8
投票

如果核心应用程序和 SQL Express 数据库位于同一服务器上,您需要将连接字符串更改为:

.\SQLExpress
。这将自动定位本地主机。

这将指示 Express SQL 实例。


4
投票
  "ConnectionStrings": {
    "DefaultConnection": "Server=.\\SQLExpress;Database=netCore.Project;Trusted_Connection=True;MultipleActiveResultSets=true"  
},

请注意 // 是必需的。之后

update-database
PM控制台


0
投票

对我来说最简单的方法是在 Visual Studio 中显示 SQL Server 对象资源管理器,可能将服务器添加到列表中,右键单击所需的数据库,选择“属性”,复制属性“连接字符串”并在appsettings.json 文件。

© www.soinside.com 2019 - 2024. All rights reserved.