zoukankan      html  css  js  c++  java
  • configurationmanager.getsection usage example.

    1.app.config(note that attribute case sensitive!)

    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
      <!--configsections must be placed above most! or there may be a "Configuration System Failed to Initialize" error!-->
      <configSections>
        <!--section type equals format- "type,assemblyname"-->
        <section name="CustomConfig" type="SrvListQueryConsole.CustomConfig, SrvListQueryConsole"/>
      </configSections>
      <startup>
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
      </startup>
      <!--config "Value" case sensitive-->
      <CustomConfig>
        <Name Value="asdf"/>
      </CustomConfig>
    </configuration>
    

      2.class (should impliment interface IConfigurationSectionHandler)

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Configuration;
    using System.Xml;
    
    namespace SrvListQueryConsole
    {
        class Program
        {
    
    
            static void Main(string[] args)
            {
                var m = ConfigurationManager.GetSection("CustomConfig") as CustomConfig;
                Console.WriteLine(m.Name);
    
                if (args.Length != 2) return;
                //System.Windows.Forms.Form fm = new ServerListQueryFormDll.SrvListQueryFrm(args[0],args[1]);
                //fm.ShowDialog();
                Console.Read();
            }
        }
    
    //mapping!
        public class CustomConfig : IConfigurationSectionHandler
        {
            public string Name { get; private set; }
            public object Create(object parent, object configContext, XmlNode section)
            {
                CustomConfig config = new CustomConfig();
                var name = section.SelectSingleNode("Name");
                if (name != null && name.Attributes != null)
                {
                    var attribute = name.Attributes["Value"];
                    if (attribute != null)
                        config.Name = attribute.Value;
                }
                return config;
            }
        }
    }
    

      

  • 相关阅读:
    new function
    Confluence5.1 最新版的安装&破解&汉化
    ganglia 启动命令
    ganglia Web前端清除当机节点
    git初始化
    递归算法的时间复杂度分析
    tcp dump 截取http
    java.io.Serializable浅析
    java 复用类的三种方式区别 组合,继承,代理的区别
    Linux netstat命令详解
  • 原文地址:https://www.cnblogs.com/hualiu0/p/4941828.html
Copyright © 2011-2022 走看看