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);

app.config动态修改及读取的更多相关文章

  1. 关于app.config不能即时保存读取的解决方案

    public void saveValue(string Name, string Value) { ConfigurationManager.AppSettings.Set(Name, Value) ...

  2. VS动态修改App.config中遇到的坑(宿主进程问题)

    昨天遇到了很奇怪的一个bug,具体描述如下: 这个系统是c/s架构的针对多个工厂做的资材管理系统,由于有很多个工厂,每个工厂都有自己的服务器.所以需要动态的改变连接字符串去链接不同的服务器. 由于这个 ...

  3. 在WCF程序中动态修改app.config配置文件

    今天在个WCF程序中加入了修改配置文件的功能.我是直接通过IO操作修改的app.config文件内容,修改后发现发现其并不生效,用Google搜了一下,在园子里的文章动态修改App.Config 和w ...

  4. C#项目实例中读取并修改App.config文件

    C#项目是指一系列独特的.复杂的并相互关联的活动,这些活动有着一个明确的目标或目的,必须在特定的时间.预算.资源限定内,依据规范完成.项目参数包括项目范围.质量.成本.时间.资源. 1. 向C#项目实 ...

  5. 关于C#和ASP.NET中对App.config和Web.config文件里的[appSettings]和[connectionStrings]节点进行新增、修改、删除和读取相关的操作

    最近我做的一些项目,经常需要用到对应用程序的配置文件操作,如app.config和web.config的配置文件,特别是对配置文件中的[appSettings]和[connectionStrings] ...

  6. 【C#】#103 动态修改App.config配置文件

    对 C/S模式 下的 App.config 配置文件的AppSetting节点,支持配置信息现改现用,并可以持久保存. 一. 先了解一下如何获取 配置信息里面的内容[获取配置信息推荐使用这个] 1.1 ...

  7. 配置文件——App.config文件读取和修改

    作为普通的xml文件读取的话,首先就要知道怎么寻找文件的路径.我们知道一般配置文件就在跟可执行exe文件在同一目录下,且仅仅在名称后面添加了一个.config 因此,可以用Application.Ex ...

  8. WPF C#之读取并修改App.config文件

    原文:WPF C#之读取并修改App.config文件 简单介绍App.config App.config文件一般是存放数据库连接字符串的.  下面来简单介绍一下App.config文件的修改和更新. ...

  9. winform app.config文件的动态配置

    获取 获取应用程序exe.config文件中  节点value值 /// <summary> /// 功能: 读取应用程序exe.config文件中 /// appSettings节点下 ...

随机推荐

  1. Github上最受关注的前端大牛,快来膜拜吧!

    1. Paul Irish Github主页: https://github.com/paulirish 个人主页: http://paulirish.com 维基百科: http://en.wiki ...

  2. 一个修改过简化版的InputQuery(简单实用,用到了Canvas)

    主要是觉得在单输入的情况下, 原来InputQuery输入框左边的文本太难看了...... function _InputQuery(const ACaption: string; const APr ...

  3. 【HDOJ】4982 Goffi and Squary Partition

    题意就是整数划分,选出和为n的K个整数,其中K-1个数的和为完全平方数S.选择整数时需要从1,2,3..连续选择,当选择整数与n-S相等时,需要跳过n-S,即选择n-S+1.如此选择K-2个数,从而可 ...

  4. 【HDOJ】2492 Ping pong

    线段树+离散化. #include <cstdio> #include <cstring> #include <cstdlib> #define MAXN 2000 ...

  5. yui--datatable 行添加格式

    采用formatter YAHOO.widget.DataTable.Formatter.changeLight=function(elCell, oRecord, oColumn, oData){ ...

  6. Nodejs in Visual Studio Code 01.简单介绍Nodejs

    1.开始 作者自己:开发人员,Asp.Net , html / js , restful , memcached , oracle ,windows , iis 目标读者:供自己以后回顾 2.我看No ...

  7. bzoj1823 [JSOI2010]满汉全席(2-SAT)

    1823: [JSOI2010]满汉全席 Time Limit: 10 Sec  Memory Limit: 64 MBSubmit: 1246  Solved: 598[Submit][Status ...

  8. 利用"NOTIFYICONDATA"实现MFC的托盘程序

    本文章为转发百度空间内容,,保存一下,以防以后用到.. 一.自定义信息 在头文件中加入下面这句话: #define WM_SHOWTASK (WM_USER+1) 二.MYDLG.CPP文件中添加_m ...

  9. linux —— 初探

    目录: linux 知识拓展 ubuntu 的安装 安装完成后做的那些事 1.linux 知识拓展 开源世界旅行手册:一个中文网站,根据<Ubuntu教程>而撰写的有趣的文档.作者说:“只 ...

  10. 4 Java学习之 反射Reflection

    1. 反射概念  反射机制就是:动态地获取类的一切信息,并利用这些信息做一些你想做的事情. java反射机制能够知道类名而不实例化对象的状态下,获得对象的属性或调用方法. JAVA反射机制是在运行状态 ...