微软新一代asp.net(vnext),也叫asp.net 5,开源代码都放在网址https://github.com/aspnet下。本文介绍的是Configuration工程,下载路径为https://github.com/aspnet/Configuration。
新一代的配置文件支持json形式、xml形式、甚至支持命令行、配置文件、ini文件,以及一切自己想扩展的格式;并且可以来源不止一个或者一类,可以选择使用json和xml类的配置文件一起使用;更重要的是,新的配置文件架构,非常清晰简单,一眼就能看明白源码结构、并且容易扩展。
首先还是给大家把工程的架构给大家贴出来:
我们只讲其中Scr文件夹下的源码,对于test文件夹下的测试工程会略过。而对于src源码部分,大致想分为三部分进行讲解:
配置文件的接口定义以及基础实现
- Microsoft.Framework.Configuration.Abstractions 配置文件的基础定义
- Microsoft.Framework.Configuration 配置文件的基础实现
- binder,特殊的配置文件实现
- Microsoft.Framework.Configuration.Binder
其他配置文件源扩展
- Microsoft.Framework.Configuration.CommandLine命令行扩展
- Microsoft.Framework.Configuration.EnvironmentVariables环境变量扩展
- Microsoft.Framework.Configuration.Ini ini文件扩展
- Microsoft.Framework.Configuration.Json json扩展
- Microsoft.Framework.Configuration.Xml xml扩展