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);
app.config动态修改及读取的更多相关文章
- 关于app.config不能即时保存读取的解决方案
public void saveValue(string Name, string Value) { ConfigurationManager.AppSettings.Set(Name, Value) ...
- VS动态修改App.config中遇到的坑(宿主进程问题)
昨天遇到了很奇怪的一个bug,具体描述如下: 这个系统是c/s架构的针对多个工厂做的资材管理系统,由于有很多个工厂,每个工厂都有自己的服务器.所以需要动态的改变连接字符串去链接不同的服务器. 由于这个 ...
- 在WCF程序中动态修改app.config配置文件
今天在个WCF程序中加入了修改配置文件的功能.我是直接通过IO操作修改的app.config文件内容,修改后发现发现其并不生效,用Google搜了一下,在园子里的文章动态修改App.Config 和w ...
- C#项目实例中读取并修改App.config文件
C#项目是指一系列独特的.复杂的并相互关联的活动,这些活动有着一个明确的目标或目的,必须在特定的时间.预算.资源限定内,依据规范完成.项目参数包括项目范围.质量.成本.时间.资源. 1. 向C#项目实 ...
- 关于C#和ASP.NET中对App.config和Web.config文件里的[appSettings]和[connectionStrings]节点进行新增、修改、删除和读取相关的操作
最近我做的一些项目,经常需要用到对应用程序的配置文件操作,如app.config和web.config的配置文件,特别是对配置文件中的[appSettings]和[connectionStrings] ...
- 【C#】#103 动态修改App.config配置文件
对 C/S模式 下的 App.config 配置文件的AppSetting节点,支持配置信息现改现用,并可以持久保存. 一. 先了解一下如何获取 配置信息里面的内容[获取配置信息推荐使用这个] 1.1 ...
- 配置文件——App.config文件读取和修改
作为普通的xml文件读取的话,首先就要知道怎么寻找文件的路径.我们知道一般配置文件就在跟可执行exe文件在同一目录下,且仅仅在名称后面添加了一个.config 因此,可以用Application.Ex ...
- WPF C#之读取并修改App.config文件
原文:WPF C#之读取并修改App.config文件 简单介绍App.config App.config文件一般是存放数据库连接字符串的. 下面来简单介绍一下App.config文件的修改和更新. ...
- winform app.config文件的动态配置
获取 获取应用程序exe.config文件中 节点value值 /// <summary> /// 功能: 读取应用程序exe.config文件中 /// appSettings节点下 ...
随机推荐
- Github上最受关注的前端大牛,快来膜拜吧!
1. Paul Irish Github主页: https://github.com/paulirish 个人主页: http://paulirish.com 维基百科: http://en.wiki ...
- 一个修改过简化版的InputQuery(简单实用,用到了Canvas)
主要是觉得在单输入的情况下, 原来InputQuery输入框左边的文本太难看了...... function _InputQuery(const ACaption: string; const APr ...
- 【HDOJ】4982 Goffi and Squary Partition
题意就是整数划分,选出和为n的K个整数,其中K-1个数的和为完全平方数S.选择整数时需要从1,2,3..连续选择,当选择整数与n-S相等时,需要跳过n-S,即选择n-S+1.如此选择K-2个数,从而可 ...
- 【HDOJ】2492 Ping pong
线段树+离散化. #include <cstdio> #include <cstring> #include <cstdlib> #define MAXN 2000 ...
- yui--datatable 行添加格式
采用formatter YAHOO.widget.DataTable.Formatter.changeLight=function(elCell, oRecord, oColumn, oData){ ...
- Nodejs in Visual Studio Code 01.简单介绍Nodejs
1.开始 作者自己:开发人员,Asp.Net , html / js , restful , memcached , oracle ,windows , iis 目标读者:供自己以后回顾 2.我看No ...
- bzoj1823 [JSOI2010]满汉全席(2-SAT)
1823: [JSOI2010]满汉全席 Time Limit: 10 Sec Memory Limit: 64 MBSubmit: 1246 Solved: 598[Submit][Status ...
- 利用"NOTIFYICONDATA"实现MFC的托盘程序
本文章为转发百度空间内容,,保存一下,以防以后用到.. 一.自定义信息 在头文件中加入下面这句话: #define WM_SHOWTASK (WM_USER+1) 二.MYDLG.CPP文件中添加_m ...
- linux —— 初探
目录: linux 知识拓展 ubuntu 的安装 安装完成后做的那些事 1.linux 知识拓展 开源世界旅行手册:一个中文网站,根据<Ubuntu教程>而撰写的有趣的文档.作者说:“只 ...
- 4 Java学习之 反射Reflection
1. 反射概念 反射机制就是:动态地获取类的一切信息,并利用这些信息做一些你想做的事情. java反射机制能够知道类名而不实例化对象的状态下,获得对象的属性或调用方法. JAVA反射机制是在运行状态 ...