码迷,mamicode.com
首页 > 移动开发 > 详细

ASP .NET CORE 根据环境变量支持多个 appsettings.json

时间:2018-09-25 21:56:22      阅读:436      评论:0      收藏:0      [点我收藏+]

标签:only   .json   where   com   pps   应用   环境变量   nts   files   

 

在项目开发的过程中,我们一般都会根据开发环境和生产环境编写两套配置文件。我们该怎么做才能实现一个项目根据环境来自动切换配置文件呢?

我们来看看微软的官方文档:https://docs.microsoft.com/en-us/aspnet/core/fundamentals/configuration/ ,一个应用程序的配置可以来自多个地方,比如命令行参数,环境变量,json文件,xml文件等等,其中根本文最相关的就是这段:

A typical sequence of configuration providers is:

  1. Files (appsettings.json, appsettings.<Environment>.json, where <Environment> is the app‘s current hosting environment)
  2. User secrets (Secret Manager) (in the Development environment only)
  3. Environment variables
  4. Command-line arguments

其中第一条已经写得很明白了,appsettings.json, appsettings.<Environment>.json 这部分文件都会默认的被加载到项目里。其中的<Environment> 是名为"ASPNETCORE_ENVIRONMENT"的环境变量(https://andrewlock.net/how-to-set-the-hosting-environment-in-asp-net-core/)。不配置的时候默认是Production,Visual Studio在LaunchSetting.json中配置成了Development,它可以是任何值。Asp.net core应用也会根据这个变量去加载相应的配置文件。比如Production环境下如果不配置ASPNETCORE_ENVIRONMENT就会默认的去加载appsettings.json和appsettings.Production.json。

值得注意的一点是appsettings.json的优先级是低于appsettings.<Environment>.json的。appsettings.<Environment>.json可以覆盖appsettings.json中的配置项。

ASP .NET CORE 根据环境变量支持多个 appsettings.json

标签:only   .json   where   com   pps   应用   环境变量   nts   files   

原文地址:https://www.cnblogs.com/axel10/p/9703548.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!