DotNetCore学习-1.读取Json配置并绑定到配置类实例
DotNetCore的程序的配置不再完全局限于XML文件,增加更加通用的Json配置。
读取Json配置文件的类主要在Microsoft.Extensions.Configuration
命名空间下,创建完对应的程序后,需要时NuGet
引入该DLL文件。
1. 创建ConsoleApp程序
Vs2017中直接使用新建项中选择创建控制台应用(.NET Core)。
2. 使用NuGet添加程序记引用
依赖项节点上右击,选择“管理NuGet程序包”,搜索Microsoft.Extensions.Configuration
,依次安装Microsoft.Extensions.Configuration
、Microsoft.Extensions.Configuration.Binder
、Microsoft.Extensions.Configuration.Json
3. 创建Json配置文件
新建文件,选择“JavaScript JSON配置文件”,并配置文件属性复制到输出目录
属性为如果较新则复制
,并在文件中输入以下配置信息
{
"General":{
"UseLED":true,
"UseScan":false,
"PortName":"Port1",
"PortRate":9600
}
}
实例中列出了General
配置节下包括四个配置:
UseLED、UseScan、PortName、PortRate。同时,也可以在配置节下添加更多的配置信息或配置节,也可以添加更多的同级别配置节信息。
4. 创建配置类
根据配置文件的结构创建对应的配置类:
public class GeneralSetting
{
public bool UseLED { get; set; }
public bool UseScan { get; set; }
public int PortRate { get; set; }
public string PortName { get; set; }
}
配置类中的属性名称与Json配置文件中的配置项的名称在大小写不敏感必须全文匹配。
5. 读取配置并绑定到配置类实例
DotNetCore中读取Json文件和绑定到对应的类实例的类和方法在命名空间Microsoft.Extensions.Configuration
下。
var builder = new ConfigurationBuilder().AddJsonFile("appsetting.json");
var configuration =builder.Build();
GeneralSetting setting = new GeneralSetting();
configuration.GetSection("General").Bind(setting);
通过以上代码,就可以将配置文件中的配置信息赋值到配置类实例中。