netcore-通过弱类型和强类型读取json配置文件

弱类型读取:

1. 通过冒号mysql:host

2.GetSection("mysql")["host"]

强类型读取:

1.GetValue<T>

2.配置映射成实体类Bind,Get<T>

using Microsoft.Extensions.Configuration;
using System;
using System.Collections.Generic;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {

            //SetBasePath必须要引入Microsoft.Extensions.Configuration.json包才会有
            IConfiguration configuration = new ConfigurationBuilder().SetBasePath(Environment.CurrentDirectory)
                .AddJsonFile("appsettings.json").Build();

            //弱类型读取
            //var info = configuration["shopidlist:2"];
            //var info = configuration.GetSection("shopidlist").GetSection("2").Value;
            //Console.WriteLine(info);

            //强类型读取
            //GetValue()必须是要引入Microsoft.Extensions.Configuration.Binder包才会有
            var info = configuration.GetValue<int>("mysql:port",0);
            Console.WriteLine(info);

            //Rootobject rootobject = new Rootobject();
            //configuration.Bind(rootobject);

            var rootobject = configuration.Get<Rootobject>();
            Console.ReadLine();
        }
    }

    public class Rootobject
    {
        public Mysql mysql { get; set; }
        public int[] shopidlist { get; set; }
    }

    public class Mysql
    {
        public string host { get; set; }
        public string port { get; set; }
    }


}
{
  "mysql": {
    "host": "192.168.23.1",
    "port": "3306"
  },
  "shopidlist": [10,20,30,40]
  
}

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值