拥有用于开发和生产的连接字符串

Posted

技术标签:

【中文标题】拥有用于开发和生产的连接字符串【英文标题】: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。 【参考方案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 并将远程详细信息放在那里,效果很好。再次感谢。

以上是关于拥有用于开发和生产的连接字符串的主要内容,如果未能解决你的问题,请参考以下文章

如何在开发与生产中使用两个连接字符串

如何为生产模式c# wpf创建连接字符串[重复]

用于访问直通查询的雪花的 ODBC 连接字符串

Azure 部署槽 - 交换和保留连接字符串

获取传递查询的连接字符串

连接 MySql 时 C# 中的访问被拒绝错误。我已经拥有数据库的完全访问权限