zoukankan      html  css  js  c++  java
  • Asp.Net Core Configuration的知识总结

    配置在Asp.Net Core中由四个核心的对象组成:

    IConfiguration:配置的最终产出物,它代表了整个asp.net core应用的配置树,这棵树有根节点,子节点和叶子节点,根节点由IConfigurationRoot来表示,子节点由IConfigurationSection来表示,叶子节点则是由key value的键值对来表示的。

    IConfigurationBuilder:它是IConfiguration的构造者

    IConfigurationSource:它表示IConfiguration中的一个个配置源,注册到IConfigurationBuilder中,形成一个IEnumerable<IConfigurationSource>列表。由于有不同的配置源,比如josn文件,环境变量,INI文件,XML文件,Console控制台等等,所以,需要有一个中间的源头参与,这个中间人就是key value键值对,能够产生这个键值对的类型是IConfigurationProvider。IConfigurationSource的build方法生成对应的IConfigurationProvider。

    IConfigurationProvider:由IConfigurationSource生成。这个类型中定义了一些方法,都是用key来获取value的,也就是说基本都是操作字典的方法。

    这四个核心对象之间的关系简单而清晰,完全可以通过一句话来概括:IConfigurationBuilder利用注册的IConfigurationSource提供的IConfigurationProvider读取原始配置数据并创建出相应的IConfiguration对象。下图所示的UML展示了配置模型涉及的主要接口/类型以及它们之间的关系。

     IConfiguration的一个比较重要的知识是利用“:”作为路径的层次结构,在IConfiguration中,有key和path这两个概念,path表示当前节点在整棵配置树中的位置,而key标志了当前的节点,如果当前节点还有子节点,那么key对应的value会返回null,如果为子节点(键值对),那么会返回当前key对应的value

  • 相关阅读:
    批量修改数据库表前缀
    form表单reset重置按钮
    thinkphp禁止模版标签解析
    form 转json,将form表单中的数据序列化数组后转换为Json
    MIME对应表
    zend studio 12汉化和破解
    hadoop一键安装伪分布式
    简明shell入门
    java中readLine()方法为什么有的行读不到?
    using 40 logical processors based on SQL Server licensing SqlServer CPU核心数限制问题
  • 原文地址:https://www.cnblogs.com/pangjianxin/p/10118098.html
Copyright © 2011-2022 走看看