ASP.NET Core MVC:使用 SQL Server 身份验证连接到现有数据库
Posted
技术标签:
【中文标题】ASP.NET Core MVC:使用 SQL Server 身份验证连接到现有数据库【英文标题】:ASP.NET Core MVC: connecting to existing database using SQL Server authentication 【发布时间】:2019-10-12 02:11:35 【问题描述】:我是网页开发的新手,正在尝试使用 SQL Server 身份验证将我的 ASP.NET Core MVC 代码连接到现有的 SQL Server 数据库。现在它只需要我的计算机识别,这当然会被 SQL Server 数据库拒绝。谁能告诉我应该怎么做?
详情:
在 Visual Studio 2019 中使用 ASP.NET Core、Entity Framework 完成编程。所有软件都是最新的。
我完全按照本教程进行操作:https://docs.microsoft.com/en-us/ef/core/get-started/aspnetcore/existing-db,但它不包括 SQL Server 身份验证。
我有我的 SQL Server 登录信息,它允许我使用“工具 -> 连接到数据库”手动连接。我可以看到我的数据库并在其中导航,但无法连接以将数据迁移到我的 MVC 文件。
我确实成功完成了整个 Microsoft ASP.NET MVC 教程,其中您创建了一个电影数据库并将其用于示例网页。连接到现有数据库时会遇到困难。
【问题讨论】:
非常感谢你们的帮助! 【参考方案1】:取决于您使用的连接方法。在您的appsettings.json
中,您可以设置连接字符串,如下所示:
对于 Windows 身份验证:
"ConnectionString": "Server=laptop-15;Database=testDatabase;Trusted_Connection=True;MultipleActiveResultSets=true"
对于 SQL Server 身份验证:
"ConnectionString": "Server=laptop-15;Database=testDatabase;User Id=user; Password=user;Trusted_Connection=True;MultipleActiveResultSets=true"
如果这能解决您的问题,请告诉我。谢谢
【讨论】:
【参考方案2】:除了 Samual Akosile 提供的关于使用 SQL Server 身份验证的连接字符串的非常好的信息之外,afaik 连接它的最简单方法是使用内置的 GetConnectionString() 方法。
在 appsettings.json 中添加以下(使用适当的连接字符串)一段 JSON
"ConnectionStrings":
"SQLServerConnectionStr": "Server=Your connection string goes here;"
然后在您配置 IServiceCollection 服务的 startup.cs 中添加以下内容
services.AddDbContext<YourDbContextClass>(options =>
options.UseSqlServer(Configuration.GetConnectionString("SQLServerConnectionStr")));
【讨论】:
以上是关于ASP.NET Core MVC:使用 SQL Server 身份验证连接到现有数据库的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Asp.Net Core Mvc 5.0 中将 sql 数据库与 ado.net 连接?
将 SQLite 与 ASP.NET Core MVC 一起使用会产生 SQL Server 错误 52(无法找到本地数据库运行时安装)
如何在 Asp.net CORE MVC 中的浏览器上下载 PDF 文件
将 jQuery JSON 对象保存到 SQL 表中,而无需在 MVC ASP.NET Core 中创建视图模型类