zoukankan      html  css  js  c++  java
  • app.config动态修改及读取

    1.添加应用程序配置文件

    右键点击项目,选择“添加”→“添加新建项”→“添加应用程序配置文件”将其添加到项目中。

    2.设置配置文件

    <?xmlversion="1.0"encoding="utf-8" ?>

    <configuration>

    <connectionStrings>
            <add name="connStr" connectionString="This is ConnectionString"/>
        </connectionStrings>
        <appSettings>
            <add key="key1" value="This is Key"/>
        </appSettings>

    </configuration>

    3.读取配置文件(项目中必须添加system.configuration引用:右击项目-添加引用-选择.net中system.configuration)

    public string ReadConfig()

    {

    ConfigurationManager.RefreshSection("connectionStrings");  //读取之前强制刷新节点清除缓存

    ConfigurationManager.RefreshSection("appSettings");          //读取之前强制刷新节点清除缓存

    string connStr= ConfigurationManager.ConnectionStrings["connStr"].ConnectionString;

    string keyVal=ConfigurationManager.AppSettings["key1"].ToString();

    return  string.Format("connStr:{0} keyVal:{1}",connStr,keyVal);

    }

    4.动态设置配置文件

    public void SettingConfig(string name,string value)

    {

                Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);//当前应用程序的配置文件
                ConnectionStringSettings conn = config.ConnectionStrings.ConnectionStrings["connStr"];
                if (conn!=null)
                {
                    config.ConnectionStrings.ConnectionStrings.Remove("connStr"); //移除节点
                }
              config.ConnectionStrings.ConnectionStrings.Add(new ConnectionStringSettings(name,value)); //添加新的节点

              AppSettingsSection appSettings = (AppSettingsSection)config.GetSection("appSettings");
                //删除name,然后添加新值
              appSettings.Settings.Remove("key1");
               appSettings.Settings.Add(name, value);
               config.Save(); //保存配置文件

    }

    其它获取配置文件方法

    1.调用到xxx.vshost.exe.config

     string ass = Assembly.GetEntryAssembly().Location;
      Configuration config = ConfigurationManager.OpenExeConfiguration(ass);

    2.随应用程序域决定使用哪种配置文件

     string path = AppDomain.CurrentDomain.SetupInformation.ConfigurationFile;

    Configuration config = ConfigurationManager.OpenExeConfiguration(path);

    3.同上

     Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);

  • 相关阅读:
    Java补漏(一)
    PHP实现程序单例执行
    zabbix 配置外部邮件server发送邮件报警
    HTML+JavaScript实现链式运动特效
    对思归者的建议
    去除Notepad++打开文件后文字下面出现红色波浪线的问题
    ANSI是什么?
    Eclipse各版本代号一览表以及官网上有很多版本的eclipse,下载哪个版本比较合适呢?
    Java语言的发展史
    win10 64位JLink v8固件丢失修复总结
  • 原文地址:https://www.cnblogs.com/net-study/p/3471280.html
Copyright © 2011-2022 走看看