Core中配置涉及的类结构

ConfgurationSource:相当于配饰的数据源,可以是内存,可以是配置文件。 ConfigurationBuilder :配饰数据源的组装车间,负责取出数据源供配置类消费Configuration。 Configuration :配置数据的映射 配置类定义: public class CompanyInfoOptions { public CompanyInfoOptions(IConfiguration config) { this.Name=config["name"]; this.Address=config["address"]; this.CreateDate = DateTime.Parse( config["createDate"]); } public String Name { get; set; } public String Address { get; set; } public DateTime CreateDate { get; set; } }
{ "companyInfo": { "Name": "hbb0b0", "address": "Xi‘AN JinYeLu number6", "createDate": "2017/08/06" } }
注意配置文件在运行目录,与以前配置不同的配置文件不用拷贝到Bin目录。
Main中调用: class Program { //Section 节名称 const string str_SectionCompanyInfo="companyInfo"; static void Main(string[] args) { Console.WriteLine(Directory.GetCurrentDirectory()); //ConfigtionBuilder初始化 var config = new ConfigurationBuilder() .SetBasePath(Directory.GetCurrentDirectory()) .AddJsonFile("companyinfo.json", optional:true,reloadOnChange:true) .Build(); //初始化CompanyInfoOptions CompanyInfoOptions options= new CompanyInfoOptions(config.GetSection(str_SectionCompanyInfo)); //输出
Console.WriteLine($"name:{options.Name}"); Console.WriteLine($"address:{options.Address}"); Console.WriteLine($"createDate:{options.CreateDate.ToString()}"); } }
原文:http://www.cnblogs.com/hbb0b0/p/7293966.html