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节点下 ... 
随机推荐
- VS2013下的Nmake编译链接成win XP的可执行程序
			nmake下没有指定toolset=vc120_xp等类似物.但是,可以指定Link.exe的链接参数,指定子系统就可以了,/SUBSYSTEM:[WINDOWS | CONSOLE],5.01 5. ... 
- org.quartz.utils.UpdateChecker   Checking for available updated version of Quartz..
			<dependency> <groupId>org.quartz-scheduler</groupId> <artifactId>quartz</ ... 
- -_-#【JS】HTML5 API
			<JavaScript高级程序设计(第3版)> <!DOCTYPE html> <html> <head> <meta charset=" ... 
- HDOJ 1097 A hard puzzle(循环问题)
			Problem Description lcy gives a hard puzzle to feng5166,lwg,JGShining and Ignatius: gave a and b,how ... 
- spring中@value注解需要注意
			首先,@value需要参数,这里参数可以是两种形式:@Value("#{configProperties['t1.msgname']}")或者@Value("${t1.m ... 
- Column count of mysql.proc is wrong. Expected 20, found 16. Created with MySQL 50096, now running 50173.
			IDEA链接mysql提示 Column count of mysql.proc is wrong. Expected 20, found 16. Created with MySQL 50096, ... 
- Object-C 对象 (创建/销毁 对象)-- 笔记
			创建/销毁 对象: Dog *dog = [Dog alloc]; // 通过alloc创建dog一个这样的对象, alloc相对于C语言中的new // *号既表示指针,也表示引用 初始化构造函数 ... 
- 使用Fastjson提示No serializer found for class
			在调用Json串生成方法时,提示: No serializer found for class com.jeremxy.domain.EpgDetail and no propertiesdiscov ... 
- packets
			packets 时间限制(普通/Java):1000MS/10000MS 运行内存限制:65536KByte 总提交: 27 测试通过: 14 描述 A factor ... 
- 大数据笔记03:大数据之Hadoop的安装
			1.安装Hadoop (1)准备Linux环境 (2)安装JDK (3)配置Hadoop 2.准备Linux环境 (1)我们用户可能都是使用Windows环境,一般用户都是先安装虚拟机,然后在虚拟机上 ... 
