將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