以前还真没见过,今天看项目中有在用,简单写了个Demo,这样配置的好处就是可以自定义配置,更加模块化,直接上代码;

1.配置文件

由于我创建的是一个控制台项目,所以配置文件是App.Config:(这里面遇到的一个坑是,自定义配置一定要放在<startup>配置节点之前,否则无法正常运行。)

<?xml version="1.0" encoding="utf-8" ?>
<configuration> <!--自定义配置节点-->
<configSections>
<sectionGroup name="ymconfig">
<section name="ym1" type="System.Configuration.NameValueSectionHandler"/>
<section name="ym2" type="System.Configuration.NameValueSectionHandler"/>
</sectionGroup> <section name="ryjconfig" type="System.Configuration.NameValueSectionHandler" />
</configSections> <ryjconfig>
<add key="name1" value="value1"/>
<add key="name2" value="value2"/>
</ryjconfig>
<ymconfig>
<ym1>
<add key="yiming1" value="一明1"/>
<add key="yiming2" value="一明2"/>
</ym1>
<ym2>
<add key="yiming3" value="一明3"/>
</ym2>
</ymconfig>
<!--自定义配置节点结束--> <startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" />
</startup> </configuration>

2.获取配置文件值

using System;
using System.Collections.Specialized;
using System.Configuration; namespace 学习测试
{
class Program
{
static NameValueCollection ryjConfig = ConfigurationManager.GetSection("ryjconfig") as NameValueCollection; static NameValueCollection ymConfig = ConfigurationManager.GetSection("ymconfig/ym1") as NameValueCollection;
static void Main(string[] args)
{
string name1 = ryjConfig["name1"];
string name2 = ryjConfig["name2"]; string ryj1 = ymConfig["yiming1"];
string ryj2 = ymConfig["yiming2"]; Console.WriteLine(name1 + ":" + name2);
Console.WriteLine(ryj1+":"+ryj2);
Console.WriteLine("zj....");
Console.ReadKey();
} }
}

web.config or app.config 中configSections配置节点的更多相关文章

  1. 在Web.config或App.config中的添加自定义配置

    .Net中的System.Configuration命名空间为我们在web.config或者app.config中自定义配置提供了完美的支持.最近看到一些项目中还在自定义xml文件做程序的配置,所以忍 ...

  2. 在Web.config或App.config中的添加自定义配置 <转>

        .Net中的System.Configuration命名空间为我们在web.config或者app.config中自定义配置提供了完美的支持.最近看到一些项目中还在自定义xml文件做程序的配置 ...

  3. 修改和获取web.config或app.config文件appSettings配置节中的Add里的value属性 函数

    1: /// <summary> 2: /// 修改web.config或app.config文件appSettings配置节中的Add里的value属性 3: /// </summ ...

  4. 一个web.Config或app.Config自定义段configSections的示例

    一个web.Config或app.Config自定义段configSections的示例 越来越觉得,直接用配置文件app.Config或web.Config配置应用系统的运行参数,比自己做一个xml ...

  5. 一个web.Config或app.Config自定义段configSections的示例--转

    直接用配置文件app.Config或web.Config配置应用系统的运行参数,比自己做一个xml配置文件,简洁方便得多.这两个配置文件不仅有常见的connectionStrings和appSetti ...

  6. 说说Web.Config与App.Config

    说到web.config和app.config大家都很熟悉,我们都叫他们配置文件,平时用的多,注意的少.两个有啥区别呢,很简单,一句话:如果是web程序,如webform项目类型和mvc项目类型就是w ...

  7. .net分布在指定文件夹的web.confgi或者app.config

    .Net里面,ConfigurationManager默认读取的是Web.config或者App.config但是,什么都放在这两个文件里面,感觉太多了,也不好管理配置.于是参考了下别人的资料,自己写 ...

  8. .NET下对Web.config与App.Config的增删改操作的代码

    把代码过程常用的内容做个收藏,下边代码段是关于 .NET下对Web.config与App.Config的增删改操作的代码. <?xml version="1.0" encod ...

  9. 配置文件(Machine.config、Web.config、App.config)

    Machine.config1.该文件在Windows目录下\Microsoft.net\framework\[version]\Config\2.为了提高性能,该文件只包含不同于默认值的设置.并且定 ...

随机推荐

  1. mybatis 高级映射和spring整合之逆向工程(7)

    mybatis 高级映射和spring整合之逆向工程(7) 4.0 逆向工程 4.1 mybatis需要程序员自己编写sql语句,mybatis官方提供逆向工程,可以针对单表自动生成mybatis执行 ...

  2. vue的计算属性get和set

    1.计算属性是用来存储数据,但具有以下几个特点: a.数据可以进行逻辑处理操作. b.对计算属性中的数据进行监视. 2.计算属性和普通属性的区别: a.计算属性是基于它的依赖进行更新的,只有在相关依赖 ...

  3. 了解http协议

    http:超文本传输协议 https:安全超文本传输协议 FTP:文件传输协议 TCP:网络控制协议 IP:互联网协议 UDP:用户数据协议 https协议特点-------------------- ...

  4. 【Tool】Mac环境维护

    1. 安装编译opencv https://blog.csdn.net/lijiang1991/article/details/50756065 /Users/yuhua.cheng/Opt/open ...

  5. http协议的状态码(200,404,503)

    http协议的状态码 1xx(临时响应) 表示临时响应并需要请求者继续执行操作的状态码. 100(继续) 请求者应当继续提出请求.服务器返回此代码表示已收到请求的第一部分,正在等待其余部分. 101( ...

  6. Mysql 索引-1

    索引的类型 根据数据库的功能,可以在数据库设计器中创建四种索引:唯一索引.非唯一索引.主键索引和聚集索引. 索引的不同应用场景 场景 1. 当数据多且字段值有相同的值得时候用普通索引. 2. 当字段多 ...

  7. TNS-12557: TNS:protocol adapter not loadable TNS-12560: TNS:protocol adapter error

    Description: Oracle 10.2 on hpux 11.23 PA. When i try to start listener i go the next errors: Error ...

  8. JavaScript中==和===区别

    在我们的日常编码中对于===是不常用的,但是它很重要 ===:表示绝对相等(严格) !==:表示不绝对相等 ==:表示相等(不严格) !=:表示不相等 看一下列子: null==undefined   ...

  9. jQuery验证所有输入合法后才干提交

    大学三年里所有在专注后台编码.学会不知多少种,servlet.ssh,springMVC,web.py...... 最后每次碰到前端自己要写点东西就满目愁抑, 干脆自己好好理解一段前端代码, 特地拿出 ...

  10. Mysql存储过程包括事务,且传入sql数据运行

    有这样一个需求.要求在mysql存储过程中使用到事务,并且运行的是动态的sql语句 代码例如以下: BEGIN DECLARE in_data TEXT; /** 标记是否出错 */ DECLARE ...