.NET Core读取配置文件appsettings.json

.NET Core读取配置文件appsettings.json

前言
看过我前几篇博客的都知道,之前匆匆忙忙搭了一个.NET Core的框架,有很多小细节没有时间琢磨,比如配置文件我用的依然是Web.config,今天得了空咱就把他改成appsettings.json,盘它

appsettings.json文件如下

{
  "Logging": {
    "LogLevel": {
      "Default": "Information",
      "Microsoft": "Warning",
      "Microsoft.Hosting.Lifetime": "Information"
    }
  },
  "Config": {
    "Host": "http://localhost:63657/",
    "Environment": "Debug"
  },
  
  "AllowedHosts": "*"
}

比如我们要读取HostEnvironment两个Config,要是放在Web.config里,加个keyvalue就好了,像这样

<appSettings>
	<add key="Environment"  value="Debug"/>
</appSettings>

但在appsettings.json配置文件里,我们有其他读取方式,这里举例我用到的这一种。
1,配置一个类和配置文件结构相同,像这样

public class Config
{
    public string Environment { get; set; }
    public string Host { get; set; }
}

2,写一个读取配置文件的工具类,像这样

namespace Management.DBContext
{
    /// <summary>
    /// 读取配置文件
    /// </summary>
    public class ConfigServices
    {
        public static IConfiguration Configuration { get; set; }
        static ConfigServices()
        {
            //ReloadOnChange = true 当appsettings.json被修改时重新加载   
            //生产发布path: appsettings.Production.json
            Configuration = new ConfigurationBuilder()
            .Add(new JsonConfigurationSource { Path = "appsettings.json", ReloadOnChange = true })
            .Build();
        }
    }
}

3,读取配置文件,像这样

if (ConfigServices.Configuration.GetSection("Config").Get<Config>().Environment == "Prod"){ }

4,如果发生产,我们可以加一套配置文件,像这样

appsettings.Production.json

我们在步骤2中改一下要解析的配置文件名字即可,这样我们每次发布和本地调试只需要改一处这里就好了。

仅供学习参考,如有侵权联系我删除

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值