配置文件configSections节点使用实例      。

2023-05-16

configSections为自定义节点,增加应用程序可移植性,用于配置文件上传路径,再深入应用可定义工厂方法需要加载创建的类。

1.配置configSections节点

[html] view plain copy print ?
  1. <configSections>  
  2.     <section name ="MyName" type="LearningConfiguration.NameSectionHandler"/>  
  3. </configSections>  
  4. <MyName>  
  5.     <Add key="lu" name="lulu"></Add>  
  6.     <Add key="lu2" name="66"></Add>  
  7. </MyName>  
<configSections>
    <section name ="MyName" type="LearningConfiguration.NameSectionHandler"/>
</configSections>
<MyName>
    <Add key="lu" name="lulu"></Add>
    <Add key="lu2" name="66"></Add>
</MyName>


2.定义NameSectionHandler类实现IConfigurationSectionHandler接口

[csharp] view plain copy print ?
  1. namespace LearningConfiguration  
  2. {  
  3.     public class NameSectionHandler : IConfigurationSectionHandler  
  4.     {  
  5.         #region 隐式实现接口  
  6.         public object Create(object parent, object configContext, System.Xml.XmlNode section)  
  7.         {  
  8.             Dictionary<stringstring> names = new Dictionary<stringstring>();  
  9.             string key = string.Empty;  
  10.             string name = string.Empty;  
  11.   
  12.             //获取配置文件中自定义节点值  
  13.             foreach (XmlNode childNode in section.ChildNodes)  
  14.             {  
  15.                 if (childNode.Attributes["key"] != null)  
  16.                 {  
  17.                     key = childNode.Attributes["key"].Value;  
  18.   
  19.                     if (childNode.Attributes["name"] != null)  
  20.                     {  
  21.                         name = childNode.Attributes["name"].Value;  
  22.                     }  
  23.                     else  
  24.                     {  
  25.                         name = string.Empty;  
  26.                     }  
  27.   
  28.                     names.Add(key, name);  
  29.                 }  
  30.             }  
  31.   
  32.             return names;  
  33.         }  
  34.         #endregion  
  35.     }  
  36. }  
namespace LearningConfiguration
{
    public class NameSectionHandler : IConfigurationSectionHandler
    {
        #region 隐式实现接口
        public object Create(object parent, object configContext, System.Xml.XmlNode section)
        {
            Dictionary<string, string> names = new Dictionary<string, string>();
            string key = string.Empty;
            string name = string.Empty;

            //获取配置文件中自定义节点值
            foreach (XmlNode childNode in section.ChildNodes)
            {
                if (childNode.Attributes["key"] != null)
                {
                    key = childNode.Attributes["key"].Value;

                    if (childNode.Attributes["name"] != null)
                    {
                        name = childNode.Attributes["name"].Value;
                    }
                    else
                    {
                        name = string.Empty;
                    }

                    names.Add(key, name);
                }
            }

            return names;
        }
        #endregion
    }
}

 

3.调用

[csharp] view plain copy print ?
  1. protected void Page_Load(object sender, EventArgs e)  
  2. {  
  3.     Dictionary<stringstring> names = ConfigurationManager.GetSection("MyName"as Dictionary<stringstring>;  
  4.     if (names != null)  
  5.     {  
  6.             //输出:lulu66  
  7.         foreach (string key in names.Keys)  
  8.         {  
  9.             Response.Write(names[key]);  
  10.         }  
  11.     }  
  12. }  
protected void Page_Load(object sender, EventArgs e)
{
    Dictionary<string, string> names = ConfigurationManager.GetSection("MyName") as Dictionary<string, string>;
    if (names != null)
    {
            //输出:lulu66
        foreach (string key in names.Keys)
        {
            Response.Write(names[key]);
        }
    }
}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

配置文件configSections节点使用实例      。 的相关文章

  • Maven配置文件settings.xml详解

    一 配置分级 首先需要了解的是Maven配置文件以及配置方式的分级 xff0c 才能做到我们自己在日常开发配置中灵活使用 根据Maven官方资料 xff0c Maven将配置文件分为两级 xff1a 用户层级全局层级 Maven在运行的时候
  • Spring Boot-配置文件yaml

    1 配置文件类型 properties xff1a key 61 valueyaml xff1a key xff1a 空格 value 2 基本语法 key value xff1b kv之间有空格大小写敏感使用缩进表示层级关系缩进不允许使用
  • IT66121 720P@60配置文件

    这里为IT66121 720P 64 60的配置文件 xff0c 在Linux下我是使用i2cset工具先验证再写驱动的 xff0c 所以这里我也简单记录一下 IT66121分为两个bank xff0c 一个是bank0的配置 xff0c
  • Android读写properties配置文件

    写这篇文章之前可以成功运行 文章后就各种找不到文件 所以并没有采用此种方式 后期完善 详见下篇解决方案 配置文件读取很容易 修改需要注意权限 比如assets目录下就不允许修改 配置文件的创建 New File 命名后选择propertie
  • [springMVC学习]1、springmvc设置spring配置文件

    我们给springmvc设置配置文件 xff0c 实际上就是让某个类在tomcat启动时 xff0c 自动的去读取配置文件 xff0c 完成ioc容器的创建 xff0c 完成初始化工作 在spring中 xff0c 我们是手动new出来 x
  • Vim配置文件vimrc 2022_11_18

    Vimrc简介 vimrc是vim的配置文件 xff0c Vim编辑器相关的所有功能开关都可以通过 vimrc文件进行设置 备注 xff1a 文件名中的 rc 是出自 run commands 最初的源头是麻省理工学院在1965年发展的CT
  • VIM配置文件vimrc

    VIM配置文件vimrc Ubuntu 默认情况下只安装tiny vim xff0c 只要运行 sudo apt get install vim 安装完整的vim就好了 vimrc 下载 34 34 34 34 34 34 34 34 34
  • mysql的配置文件 my.conf

    client default character set 61 utf8 mysql default character set 61 utf8 mysqld init connect 61 SET collation connection
  • Mysql配置文件/etc/my.cnf解析

    Mysql配置文件 etc my cnf解析 客户端设置 client port 61 3306 默认情况下 xff0c socket文件应为 usr local mysql mysql socket 所以可以ln s xx tmp mys
  • 有用的samba配置文件

    span class token punctuation span guxinhua span class token punctuation span span class token assign left variable path
  • C/C++ ini配置文件的格式及如何读写ini配置文件

    一 ini配置文件的格式 为什么要用INI文件 xff1f 如果我们程序没有任何配置文件时 xff0c 这样的程序对外是全封闭的 xff0c 一旦程序需要修改一些参数必须要修改程序代码本身并重新编译 xff0c 这样很不好 xff0c 所以
  • 针对vue的配置文件

    针对vue的配置文件 我们在根目录下创建一个 vue config js 文件 xff0c 将下方配置下去 module exports 61 区分打包环境与开发环境 process env NODE ENV 61 61 61 39 pro
  • 【SpringBoot】配置文件application自定义内容引入

    背景 进行Spring Boot配置文件部署时 xff0c 发出警告Spring Boot Configuration Annotation Processor not configured xff0c 但是不影响运行 解决方案 pom x
  • SpringMVC配置文件(spring-mvc.xml)

    springMVC主要有以下四个配置 xff1a 1 配置组件扫描 xff0c 必配 xff0c 组件扫描会扫描包下的所有的Controller类 lt 配置组件扫描 gt lt context component scan base pa
  • 我的vimrc配置文件

    34 vundle begin set nocompatible 34 与vi不一致 filetype off filetype plugin on 34 检测插件 set rtp 43 61 vim bundle vundle 34 载入
  • SpringBoot系列---application.yml配置文件

    1 yml配置文件格式 span class token comment 对象 span span class token key atrule person span span class token punctuation span s
  • k8s config配置文件

    接着上面的博客继续写 pwd gt etc kubernetes cat config kubernetes system config The following values are used to configure various
  • Spring Cloud获取本机IP地址

    最新的Spring Cloud获取本机的IP地址的配置文件如下 eureka instance hostname spring cloud client ip address lease renewal interval in second
  • 【经典】环境切换——SpringBoot配置不同环境启用不同的配置文件

    不同环境下切换数据库配置文件 环境切换配置一般在数据库 存储等需要在开发环境和正式环境中进行切换时 避免出错而常用的方式 以下内容以yml文件来举例 我们需要创建两个application文件 application dev yml app
  • jar包读取资源文件报错:找不到资源文件(No such file or directory)

    1 遇到问题 1 Maven项目开发阶段正常运行 Java程序可以读取配置文件 public class Main public static void main String args throws Exception Main read

随机推荐

  • C# XML 添加,修改,删除Xml节点

    添加xml节点 private void AddXml string image string title XmlDocument xmlDoc 61 new XmlDocument xmlDoc Load Server MapPath 3
  • 使用Activator.CreateInstance完善简单工厂

    前几天在项目中看到别人的工厂类使用Activator CreateInstance 之前用简单工厂都是用switch case xff0c 之前没有用过便查了查资料 xff0c 正是这个方法 43 反射简化了工厂模式 xff0c 在需求增加
  • can协议的数据帧格式

    1 帧起始和帧结束 2 仲裁段 xff1a 3 控制段 xff1a 4 数据段 5 CRC段 6 ACK段
  • C#各种配置文件使用,操作方法总结

    配置文件操作 配置文件一般分为内置配置文和用户自定义配置文件 内置配置文件包括app config web config Settings settings等等 用户自定义配置文件一般是将配置信息放到XML文件或注册表中 xff0c 配置信
  • C#中配置文件的使用

    1 向项目添加app config文件 xff1a 右击项目名称 xff0c 选择 添加 添加新建项 xff0c 在出现的 添加新项 对话框中 xff0c 选择 添加应用程序配置文件 xff1b 如果项目以前没有配置文件 xff0c 则默认
  • C# 获取主机IP地址

    public static string GetIP string strAddr 61 34 34 try string strHostName 61 System Net Dns GetHostName System Net IPHos
  • C#中的继承与多态还有接口

    简单继承多态接口参考 简单继承 最简单的三个类 csharp view plain copy print public class Animal public Animal Debug Log 34 Construct Animal 34
  • C#操作配置文件中appSettings,connectionStrings节点

    using System using System Configuration using System Web using System Web Configuration namespace myConfiguration region
  • C# 配置文件读取与修改

    目录 43 旧方法 各位看官最好使用下面新方法新方法 配置文件在很多情况下都使用到 配置文件分为两种 一种是应用程序的配置文件 一种是web的配置文件 两种配置文件最大的区别是web的配置文件更新之后会实时更新 应用程序的配置文件不会实时更
  • AppSettings和ConnectionStrings的区别

    ConfigurationSettings AppSettings 34 34 和 ConfigurationManager ConnectionStrings 34 34 ConnectionStrings有什么区别 xff1f 晕呀 更
  • appsetting 和connectionString 的区别。

    AppSettings是ASP NET1 1时期用的 在 NET Framework 2 0中 xff0c 新增了ConnectionStrings 1 lt connectionStrings gt lt connectionString
  • 配置文件的方式总结

    1 xml文件存储配置信息 xff0c 属性中可设置输出到应用程序输出路径拷贝 xff0c 程序中读写使用 xff0c 程序修改只需修改xml文件然后覆盖到输出路径中 2 AppConfig文件存储 xff0c 可设置属性输出路径 xff0
  • 计算机大端模式和小端模式 内存对齐问题(sizeof)

    目录 43 一大端模式和小端模式的起源二什么是大端和小端三数组在大端小端情况下的存储四为什么会有大小端模式之分呢五如何判断机器的字节序内存对齐问题 再讲讲pragma pack 内存对齐二 一 大端模式和小端模式的起源 关于大端小端名词的由
  • linux虚拟机关机、重启命令

    一 shutdown 1 shutdown h now xff1a 立即关机 2 shutdown h 10 53 xff1a 到10 53关机 3 shutdown h 43 10 xff1a 10分钟后自动关机 4 shutdown r
  • C#函数的重载

    函数名必须相同方能构成函数重载 函数返回值类型 可以相同 也可以不同 注意 函数的返回类型不足以区分两个重载函数 函数参数类型 必须不同 函数参数个数 可以相同 可以不同 函数参数顺序 可以相同 可以不同 csharp view plain
  • 静态方法和实例化方法的本质区别

    本文章已收录于 xff1a 这是一个经常被时时提出来的问题 xff0c 很多时候我们以为理解了 懂了 xff0c 但深究一下 xff0c 我们却发现并不懂 方法是我们每天都在写得 xff0c 很多程序员大多都使用实例化方法 xff0c 而很
  • string,StringBuffer与StringBuilder的区别

    String 字符串常量 StringBuffer 字符串变量 xff08 线程安全 xff09 StringBuilder 字符串变量 xff08 非线程安全 xff09 简要的说 xff0c String 类型和 StringBuffe
  • C# xml文件的创建,修改和添加节点 。

    最近在做一个项目 xff0c 设计到xml文件的传输 xff0c 所以就研究了一下 xff0c NET Framework完全支持XML DOM模式 xff0c 但它不支持SAX模式 NET Framework支持两种不同的分析模式 xff
  • C#自定义ConfigSections节点操作

    sectiongroup 在config文件中加入以下节点 html view plain copy print lt configSections gt lt sectionGroup name 61 34 WebSiteInfo 34
  • 配置文件configSections节点使用实例      。

    configSections为自定义节点 xff0c 增加应用程序可移植性 xff0c 用于配置文件上传路径 xff0c 再深入应用可定义工厂方法需要加载创建的类 1 配置configSections节点 html view plain c