首页 > 解决方案 > 当我在本地时,如何将 appsettings.json 配置为与项目具有不同的连接字符串

问题描述

我在 API 中使用 .NET 5,在 appsettings.json 中我有以下内容:

我正在处理的项目有一个像这样的连接字符串

"DefaultConnection": "Data Source=someserverAWS.com; initial catalog=ProjectDb; Persist Security Info=True; User Id=lorenz; Password=54321 ; MultipleActiveResultSets=True"

但是我无权访问该服务器,因此为了使代码在本地为我工作,我必须每次都将其更改(例如,我正在开发一个新功能)到这样的东西

"DefaultConnection": "Data Source=localhost;initial catalog=ProjectDb;Persist Security Info=True;User Id=sa;Password=12345;MultipleActiveResultSets=True" 

两者都是不同的,所以问题是我如何才能在我的本地有一些东西,当我从 repo 中提取时仍然存在,但在推送时不更改 repo 文件?

标签: .netasp.net-coreasp.net-core-webapiconnection-string

解决方案


这很简单。两步

步骤 1. 设置您的环境变量:ASPNETCORE_ENVIRONMENT

您可以通过 Windows 环境变量设置添加它。

设置ASPNETCORE_ENVIRONMENTDevelopment

在此处输入图像描述

或者,如果通常该launchSettings.json文件将在该/Properties文件夹下创建。如果你有那个文件,你可以检查它是否自动设置了环境变量。

在此处输入图像描述

第 2 步。复制appsettings.jsonappsettings.Development.json

现在您的应用程序将用于appsettings.Development.json覆盖默认appsettings.json文件。

您可以在appsettings.Development.json文件中添加本地调试值。

在此处输入图像描述

现在您可以编辑连接字符串。

我强烈建议你不要让 git 跟踪开发文件。


推荐阅读