首页 > Web开发 > 详细

asp.net core 配置

时间:2017-08-06 11:51:10      阅读:238      评论:0      收藏:0      [点我收藏+]

ASP.NET Core的配置系统已经和之前版本的ASP.NET有所不同了,之前是依赖于System.Configuration和XML配置文件web.config,现在支持各种格式的配置,比以前灵活多了。

支持一下几种:

MemoryConfigurationProvider

EnvironmentVariablesConfigurationProvider

CommandLineConfigurationProvider

JsonConfigurationProvider

XmlConfiguationProvider

IniConfigurationProvider

自定义ConfigurationProvider

 

今天我们看看JsonConfig文件的使用:


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;

}

}

 
VSCode 文件组织形式:

{
"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()}");

}

}

技术分享

 

 

asp.net core 配置

原文:http://www.cnblogs.com/hbb0b0/p/7293966.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!