任务12:Bind读取配置到C#实例

将json文件的配置转换成C#的实体

新建项目:

OptionsBindSample

忘了把 https去掉了。下次记住了 就可以了。

 

注入Configuration

由于我们要用Configuration所以要用到依赖注入。

 

我们可以使用IConfiguration的接口。

注意引入命名空间:

using Microsoft.Extensions.Configuration;

这里调用configuration的bind方法。可以传入一个对象将我们配置信息和对象映射起来。

新建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; }
    }
}
Class.cs

 

新建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"
    }
  ]
}
json

 

 

 

 

 

我们使用控制台的方式启动项目

 

 

输出结果

 

 

ClassNo:1ClassDesc:ASP.NET Core 101ClassDesc:3

 

 

 

posted @ 2019-02-11 16:24  高山-景行  阅读(654)  评论(0编辑  收藏  举报