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)
        {


            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);

            //強類型讀取
            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]
  
}

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章