将json文件的配置转换成C#的实体web
新建项目:json
OptionsBindSampleapp
忘了把 https去掉了。下次记住了 就能够了。ide
注入Configurationui
因为咱们要用Configuration因此要用到依赖注入。spa
咱们能够使用IConfiguration的接口。3d
注意引入命名空间:code
using Microsoft.Extensions.Configuration;orm
这里调用configuration的bind方法。能够传入一个对象将咱们配置信息和对象映射起来。xml
新建Class的班级类
using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; namespace OptionsBindSample { public class Class { public int ClassNo { get; set; } public string ClassDesc { get; set; } public List<Student> Students { get; set; } } public class Student { public string Name { get; set; } public string Age { get; set; } } }
新建appsetting.json文件
咱们在新建项目的时候,默认自带了这个appsettings.json文件了。
默认webhost启动的时候是没有添加任何配置和启动相关的
咱们默认host启动会读取appsetting.json读取咱们的configuration里面去。
只要你的名字叫作appsettings.json
它会经过CreateDefaultBuilder这个方法,会把它加载到咱们的configuration里面
把以前的json文件拷贝过去
{ "ClassNo": "1", "ClassDesc": "ASP.NET Core 101", "Students": [ { "name": "jesse", "age": "13" }, { "name": "jim", "age": "18" }, { "name": "lisa", "age": "22" } ] }
咱们使用控制台的方式启动项目
输出结果
ClassNo:1ClassDesc:ASP.NET Core 101ClassDesc:3