【问题标题】:Having Connection String for Development and Production拥有用于开发和生产的连接字符串
【发布时间】:2021-12-20 19:31:07
【问题描述】:

我有一个用 C# 编写的 ASP.NET Core 3.1 MVC 项目,它使用 SQL Server 数据库。我在appsettings.json 中有我的连接字符串,它设置为我的本地数据库。

我的问题是当我发布我的应用程序时,SQL Server 将有一个不同的名称。如何获得用于开发和生产的连接字符串?

我已经在互联网上搜索了几天并尝试了各种方法,但似乎没有任何效果。

非常感谢您的帮助,

【问题讨论】:

  • Google 用于 asp.net 核心配置转换
  • 谢谢,但我使用的是 asp.net core。

标签: c# sql-server asp.net-core-mvc


【解决方案1】:

在标准 appsettings.json 所在的同一文件夹中创建名为 appsettings.development.json 的文件。
此文件的内容应该是原始 appsettings 的 1-1 副本。
在原始appsettings 中修改连接字符串,使其指向live 数据库。您可以从appsettings.development.json 中删除不会针对生产环境更改的未使用设置。

将您的生产服务器的ASPNETCORE_ENVIRONMENT 系统变量设置为Production(可选,至少在理论上)。

您将在here 找到更多信息。

【讨论】:

  • 谢谢。这是我即将发布的第一个 Web 应用程序,我刚刚意识到我可以在发布配置中更改连接字符串。我认为这是我更改它的地方,然后每次发布我的应用程序时它都会使用此连接字符串。
  • 此文件的内容应该是原始 appsettings 的 1-1 个副本 - 它应用在基础的顶部,因此您只需要它来包含更改
  • 是的 - 这就是为什么我的回答中有You can remove unused settings that will not be changed for production environment from appsettings.development.json.。对于初学者来说,这是一个循序渐进的步骤,我认为这样更容易。
  • 谢谢大家,我创建了一个 appsettings.production 并将远程详细信息放在那里,效果很好。再次感谢。
猜你喜欢
  • 2010-10-05
  • 2014-11-29
  • 1970-01-01
  • 2018-07-16
  • 2015-11-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多