如何生成appsettings。<EnvironmentName> .json文件?

san*_*tro 2 c# asp.net-core-2.1 asp.net-core-webapi-2.1

我有一个asp.net core 2 Web API,它将在以下环境中部署:

INT,QA,STAGE,生产环境。

基于上述,我需要appsettings.<EnvironmentName>.json为每个环境提供文件。从以下链接:https : //docs.microsoft.com/zh-cn/aspnet/core/fundamentals/environments?view=aspnetcore-2.1 ,我看到了

如果是本地开发环境,则将名为ASPNETCORE_ENVIRONMENT的环境变量设置为“开发”。在未设置ASPNETCORE_ENVIRONMENT的部署中,默认值为生产

我想知道在appsettings.<EnvironmentName>.json为INT,QA和STAGE环境准备文件时需要采取哪些步骤?我是否需要为每个环境Web服务器显式设置环境:

设置ASPNETCORE_ENVIRONMENT =开发。

任何人都可以通过提供指导来帮助我吗?

Chr*_*att 8

我可能会丢失一些东西,但这似乎很简单。要创建特定于环境的设置文件,只需在项目中直接创建它们,即在项目appsettings.Foo.json的根目录中创建一个新文件。Visual Studio将自动将其appsettings.json作为父项放在解决方案资源管理器中。

在服务器上,是的,您需要将要在其上运行的环境设置为ASPNETCORE_ENVIRONMENT。如果应该使用appsettings.QA.json,则将其设置为QA。这里的所有都是它的。

  • 这其中有什么技巧吗?简单地创建文件不会自动将其嵌套在父文件下。 (4认同)
  • 对我有用的是在 appsettings.json 文件上使用“复制粘贴”,然后重命名它。在重命名时按 Enter 键会导致其嵌套 (3认同)
  • 它可能不会嵌套在 UI 中,但这与它是否会起作用无关。 (2认同)
  • 要检查代码中的 `Environment`,可以使用 `IWebHostEnvironment env` `env.IsEnvironment("QA");`。 (2认同)