c#修改凯立德配置文件修改器里的值,运行时变了,但是打开凯立德配置文件修改器,里面的值还是一样,如下图

C#中如何保存程序运行时的变量值和数据_百度知道当前位置:&&
C#配置文件App.config使用总结
&&&&来源:&互联网& 发布时间:
首先,app.config 配置文件的格式如下:
&?xml version="1.0" encoding="utf-8" ?&
&configuration&
&appSettings&
&add key="ServerIP" value="127.0.0.1"&&/add&
&add key="DataBase" value="WarehouseDB"&&/add&
&add key="user" value="sa"&&/add&
&add key="password" value="sa"&&/add&
&/appSettings&
&/configuration&
因此,对于配置文件的读取方式如下:(依然由上面的文件举一个简单的例子)
static string str = "Data Source=" + System.Configuration.ConfigurationManager.AppSettings["ServerIP"] + ";Initial Catalog =" + System.Configuration.ConfigurationManager.AppSettings["DataBase"] + "; User ID=" + System.Configuration.ConfigurationManager.AppSettings["user"] + "; Password=" + System.Configuration.ConfigurationManager.AppSettings["password"] ;
这样,便从配置文件中读取出了所需要的信息,组成了一组用于连接数据库的字符串。
对于修改配置文件,有如下方法修改app.config中的值:
Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
config.AppSettings.Settings["DB_UID"].Value = "demo";
config.Save(ConfigurationSaveMode.Full);
事实证明这种做法是不可行的。虽然程序运行时的值已经被修改。但是打开app.config查看,会看到值仍然没有被改动。如果重启程序,就会使用以前的旧值。用这种方法只可以读取值。不能写入或者修改值。
注意,正确的做法是,把配置文件按照普通的xml文件来进行修改,否则,经常出现的问题就是你所修改的东西其实最后根本没有写入文件!最后还是修改失败!
当作普通的xml文件读取的话,首先就要知道怎么寻找文件的路径。我们知道一般配置文件就在跟可执行exe文件在同一目录下,且仅仅在名称后面添加了一个.config 因此,可以用Application.ExecuteablePath+".cofig"的方式来获得,不过更加推荐使用AppDomain.CurrentDomain.SetupInformation.ConfigurationFile这句话来直接获取当前程序的配置文件的位置,具体原因,后面再叙述。
这里给出常用的操作函数。
using System.X
//第一个参数是xml文件中的add节点的value,第二个参数是add节点的key
private void SaveConfig(string ConnenctionString, string strKey)
XmlDocument doc = new XmlDocument();
//获得配置文件的全路径
string strFileName = AppDomain.CurrentDomain.SetupInformation.ConfigurationF
strFileName= AppDomain.CurrentDomain.BaseDirectory + "\\exe.config";
doc.Load(strFileName);
//找出名称为“add”的所有元素
XmlNodeList nodes = doc.GetElementsByTagName("add");
for (int i = 0; i & nodes.C i++)
//获得将当前元素的key属性
XmlAttribute att = nodes[i].Attributes["key"];
//根据元素的第一个属性来判断当前的元素是不是目标元素
if (att.Value == strKey)
//对目标元素中的第二个属性赋值
att = nodes[i].Attributes["value"];
att.Value = ConnenctionS
//保存上面的修改
doc.Save(strFileName);
System.Configuration.ConfigurationManager.RefreshSection("appSettings");
现在回过头还是看上面的这个函数,看它的最后一行,它的作用是什么?
查找msdn文档可以发现微软出于性能考虑,对配置文件App.config采用了缓存策略,因此,尽管上面的函数确实在磁盘文件中修改了节点的值,当时,当用前面的那个函数读取的时候,会依然得到原来的那个值,仿佛没有修改一样!所以,必须使用这么句话,进行一遍刷新,强制要求程序下一次读取的时候,从磁盘文件读取!
好了,现在使用Visual Studio写C#程序的童鞋应该都遇到了一个蛋疼的问题,就是在debug时,明明在程序中修改了配置文件,可是下次重新执行程序的时候,发现程序根本没有发生变化,打开与exe文件相对应的config文件查看,发现文件根本没有变化!!!!明明就是当作xml文件来操作的,怎么会这样?!
其实这就涉及VS的运行机制问题了,细心的童鞋会在exe文件的同目录下,发现有一个与之对应的vshost.exe,以及vshost.exe.config 文件,当打开这里的这个config文件后会发现,在这里面的xml文件的值发生了变化!对滴~VS无论在Debug还是Release下,运行的程序都是这个带有vshost的程序,修改的也是这个程序对应的config。当时,当程序刚刚启动的时候,却是读取的原来与exe文件对应的config文件,将这个config文件内容替换原来与vshost.exe对应的config里面内容,这也就是为什么每次重新开程序后恢复原状的原因。
由于程序在VS里面调试的时候,运行的程序与直接去bin文件夹运行的程序不一样,所以,更推荐使用AppDomain.CurrentDomain.SetupInformation.ConfigurationFile来获取当前运行程序的配置文件。
当然啦,这一点差异不要着急,等程序调试完毕后,以后,程序一般就是从文件夹手动启动的啦,这个时候,就没有上面的那么多问题的了。一切会恢复正常!
相关技术文章: &&&&
C#权限不够注册表
在Win7中,系统安全系数已经很高了,因此.NET4.0中对于注册表操作这种高级权限的东西也限制的比较紧,因此,在编程中经常会发现,使用RegistryKey类进行操作时的各种失效或者各种报错。
如何解决这问题呢?
首先,因为要操作注册表,所以,需要程序以管理员身份运行。在Win7系统中的表现即为运行程序时,弹出用户帐户控制对话框,申请以管理员身份运行。
在项目中新建一个后缀为manifest的文件,如下图所示,
创建成功后,这个文件中默认就会产生以下内容
...... &&&&
最近在做一个程序,要求先登陆后再进入界面。因此,若是用户取消登陆,则要退出应用程序。
注意,用于重新设计了登陆界面,FormBorderStyle设置的为None,因此窗体右上角并没有关闭的按钮,按照常规如下方法来实现退出,是不现实的。
private void F_Login_Close(object sender, EventArgs e)
Application.Exit();
那么依次类推,可否添加一个按钮,让其响应事件如上所示呢?
private void button1_Click(object sender, EventArgs e)
...... &&&&
自从上次做了JQ自定义分页插件和表格插件后,就没在自定义过插件了,这一个月都在用linq和ef,基本前端都没怎么去碰了,今天有个同事说有个项目需要在下拉框里面带有复选框,本来想网上找下插件的,一想,其实这功能也并不难,于是就自己做了一个,也趁机再次熟悉下JQ自定义插件吧。
效果图,如下:
其实就是强化JQ,免得太久没用,生疏了。好了。
(function($){
var option={
isEdit:false,
//是否可以编辑:默认是否
Listheight:200,
//下拉框高度
ListWi......&nbsp最新技术文章: &&&&
本文实例讲述了C#通过IComparable实现ListT.sort()排序的方法,分享给大家供大家参考之用。具体方法如下:
通常来说,List&T&.sort()可以实现对T的排序,比如List&int&.sort()执行后集合会按照int从小到大排序。如果T是一个自定义的Object,可是我们想按照自己的方式来排序,那该怎么办呢,其实可以用过IComparable接口重写CompareTo方法来实现。流程如下:
一、第一步我们申明一个类Person但是要继承IComparable接口:
using System.Collections.G
using System.L
using System.T
using System.Threading.T
namespace TestIC...... &&&&
本文实例讲述了C#实现对Json字符串处理方法,分享给大家供大家参考。具体分析如下:
一般对于web应用开发人员来说对Json字符串都会很熟悉,其实在很多请求我们返回的都是Json字符串。那对于C#代码如何处理Json字符串呢,.Net封装了一个类叫做JavaScriptSerializer[MSDN Library 链接:/en-us/library/ee191864(v=vs.110).aspx];这个类提供了一个方法。
下面这个是在快递100往抓取的一个圆通的快递信息。对于我们有用的信息是快递时间,快递状况。那我该如何来做。 
...... &&&&
本文以一个非常简单的实例讲述了Winform实现抓取web页面内容的方法,代码简洁易懂,非常实用!分享给大家供大家参考。
具体实现代码如下:
WebRequest request = WebRequest.Create("http://1./play.php?a=" + PageUrl);
WebResponse response = request.GetResponse();
Stream resStream = response.GetResponseStream();
StreamReader sr = new StreamReader(resStream, System.Text.Encoding.UTF8);
string htmlinfo = sr.ReadToEnd();
resStream.Close();
sr.Close();
感兴趣的朋友可以测试运行或改进本文实例。希望本文所述对大家C#程序设计的学习有所帮助。
......&nbsp
特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!
(C)2012-,站长邮箱:www_169it_(请将#改为@)读语句:& & & & &&
String str = ConfigurationManager.AppSettings["DemoKey"];
& & & & & &
1 Configuration cfa = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
cfa.AppSettings.Settings["DemoKey"].Value = "DemoValue";
cfa.Save();
配置文件内容格式:(app.config)
System.Configuration.ConfigurationSettings.AppSettings["Key"];但是现在FrameWork2.0已经明确表示此属性已经过时。并建议改为ConfigurationManager或WebConfigurationManager。并且AppSettings属性是只读的,并不支持修改属性值.
但是要想调用ConfigurationManager必须要先在工程里添加system.configuration.dll程序集的引用。(在解决方案管理器中右键点击工程名称,在右键菜单中选择添加引用,.net TablePage下即可找到)添加引用后可以用 String str = ConfigurationManager.AppSettings["Key"]来获取对应的值了。
更新配置文件:Configuration cfa = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);cfa.AppSettings.Settings.Add("key", "Name") || cfa.AppSettings.Settings["BrowseDir"].Value = "name";
最后调用cfa.Save();&当前的配置文件更新成功。
读写配置文件app.config&在.Net中提供了配置文件,让我们可以很方面的处理配置信息,这个配置是XML格式的。而且.Net中已经提供了一些访问这个文件的功能。
1.读取配置信息下面是一个配置文件的具体内容:
1 &?xml version="1.0" encoding="utf-8"?&
2 &configuration&
3 &appSettings&
&add key="ConnenctionString" value="*" /&
&add key="TmpPath" value="C:\Temp" /&
&/appSettings&
7 &/configuration&
.net提供了可以直接访问&appsettings&(注意大小写)元素的方法,在这元素中有很多的子元素,这些子元素名称都是&add&,有两个属性分别是&key&和&value&。一般情况下我们可以将自己的配置信息写在这个区域中,通过下面的方式进行访问:
string ConString=System.Configuration.ConfigurationSettings.AppSettings["ConnenctionString"];
在appsettings后面的是子元素的key属性的值,例如appsettings["connenctionstring"],我们就是访问&add key="ConnenctionString" value="*" /&这个子元素,它的返回值就是&*&,即value属性的值。
2.设置配置信息如果配置信息是静态的,我们可以手工配置,要注意格式。如果配置信息是动态的,就需要我们写程序来实现。在.Net中没有写配置文件的功能,我们可以使用操作XML文件的方式来操作配置文件。下面就是一个写配置文件的例子。
private void SaveConfig(string ConnenctionString)
XmlDocument doc=new XmlDocument();
//获得配置文件的全路径
string strFileName=AppDomain.CurrentDomain.BaseDirectory.ToString()+"Code.exe.config";
doc.LOAd(strFileName);
//找出名称为&add&的所有元素
XmlNodeList nodes=doc.GetElementsByTagName("add");
for(int i=0;i&nodes.Ci++)
//获得将当前元素的key属性
XmlAttribute att=nodes[i].Attributes["key"];
//根据元素的第一个属性来判断当前的元素是不是目标元素
if (att.Value=="ConnectionString")
//对目标元素中的第二个属性赋值
att=nodes[i].Attributes["value"];
att.Value=ConnenctionS
//保存上面的修改
doc.Save(strFileName);
VS2005中读写配置文件
VS2003中对于应用程序配置文件(app.config或者web.config)只提供了读取的功能。而在VS2005中,对于配置文件的功能有了很大的加强。在VS2005中,对于应用程序配置文件的读写一般使用Configuration,ConfigurationManager两个类。ConfigurationManager类为客户应用程序提供了一个访问的功能。使用ConfigurationManager对象执行打开配置文件的操作后,将会返回一个Configuration的对象。通过程序实现读写配置文件的代码如下所示:
1.创建配置文件中的配置节所对应的类。该类必须继承自ConfigurationSection&
public sealed class ConfigurationSections : ConfigurationSection
[ConfigurationProperty("filename", DefaultValue = "default.txt")]
public string FileName
return (string)this["filename"];
this["filename"] =
public sealed class BusinessSpaceConfiguration : ConfigurationSection
[ConfigurationProperty("filename")]
public string FileName
return (string)this["filename"];
this["filename"] =
2.创建配置文件代码& &
private static void WriteAppConfiguration()
ConfigurationSections configData = new ConfigurationSections();
configData.FileName = "abc.txt";
System.Configuration.Configuration
config =ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
config.Sections.Remove("ConfigurationSections");
config.Sections.Add("ConfigurationSections", configData);
config.Save();
BusinessSpaceConfiguration bsconfigData = new BusinessSpaceConfiguration();
bsconfigData.FileName = "def.txt";
System.Configuration.Configuration config1 =ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
config1.Sections.Remove("BusinessSpaceConfiguration");
config1.Sections.Add("BusinessSpaceConfiguration", bsconfigData);
config1.Save();
catch (Exception err)
Console.Write(err.Message);
3.生成的配置文件格式如下所示:
&?xml version="1.0" encoding="utf-8"?&&configuration&
&configSections&
&sectiontype="ConsoleApplication1.BusinessSpaceConfiguration, ConsoleApplication1, Version=1.0.0.0,Culture=neutral, PublicKeyToken=null" /&
&section type="ConsoleApplication1.ConfigurationSections,ConsoleApplication1, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" /&
&/configSections&
&BusinessSpaceConfiguration filename="def.txt" /&
&ConfigurationSections filename="abc.txt" /&&/configuration&
4.读取应用程序配置文件& &&
private static void ReadAppConfiguration()
ConfigurationSections obj1 = ConfigurationManager.GetSection("ConfigurationSections")as ConfigurationS
BusinessSpaceConfiguration obj2 = ConfigurationManager.GetSection("BusinessSpaceConfiguration") as BusinessSpaceC
Console.WriteLine(obj1.FileName);
Console.WriteLine(obj2.FileName);
自定义应用程序配置文件(app.config)
1. 配置文件概述:&应用程序配置文件是标准的 XML 文件,XML 标记和属性是区分大小写的。它是可以按需要更改的,开发人员可以使用配置文件来更改设置,而不必重编译应用程序。配置文件的根节点是configuration。我们经常访问的是appSettings,它是由.Net预定义配置节。我们经常使用的配置文件的架构是象下面的形式。先大概有个印象,通过后面的实例会有一个比较清楚的认识。下面的&配置节&可以理解为进行配置一个XML的节点。
常见配置文件模式:
&configuration&&&&&&&&& &configSections&&&&&&&&&&&&&&&&&&&& //配置节声明区域,包含配置节和命名空间声明&&&&&&&&&&&&&&&& &section&&&&&&&&&&&&&&&&&&& //配置节声明&&&&&&&&&&&& &sectionGroup&&&&&&&&&&&&&&&&&& //定义配置节组&&&&&&&&&&&&&&&& &section&&&&&&&&&&&&&&&&&&& //配置节组中的配置节声明&&&&&&&& &appSettings&&&&&&&&&&&&&&&&&&&&&&& //预定义配置节&Custom element for configuration section&&& //配置节设置区域
2.只有appSettings节的配置文件及访问方法
下面是一个最常见的应用程序配置文件的例子,只有appSettings节。
&?xml version="1.0" encoding="utf-8"?&&configuration&
&appSettings&
&add key="connectionstring" value="User Source=.;Password=;Initial Catalog=Provider=SQLOLEDB.1;" /&
&add key="TemplatePATH" value="Template" /&
&/appSettings&&/configuration&
下面来看看这样的配置文件如何方法。
string _connectionString=ConfigurationSettings.AppSettings["connectionstring"];
使用ConfigurationSettings类的静态属性AppSettings就可以直接方法配置文件中的配置信息。这个属性的类型是NameValueCollection。
3.自定义配置文件&3.1 自定义配置节
一个用户自定义的配置节,在配置文件中分为两部分:一是在&configSections&&/configSections&配置节中声明配置节(上面配置文件模式中的&&section&&),另外是在&configSections&&/configSections &之后设置配置节(上面配置文件模式中的&&Custom element for configuration section&&),有点类似一个变量先声明,后使用一样。声明一个配置文件的语句如下:&section " type=" "/&&&section&:声明新配置节,即可创建新配置节。
name:自定义配置节的名称。type:自定义配置节的类型,主要包括System.Configuration.SingleTagSectionHandler、System.Configuration.DictionarySectionHandler、System.Configuration.NameValueSectionHandler。
不同的type不但设置配置节的方式不一样,最后访问配置文件的操作上也有差异。下面我们就举一个配置文件的
例子,让它包含这三个不同的type。
&?xml version="1.0" encoding="utf-8" ?&&configuration&
&configSections&
&section type="System.Configuration.SingleTagSectionHandler"/&
&section type="System.Configuration.DictionarySectionHandler"/&
&section type="System.Configuration.NameValueSectionHandler" /&
&/configSections&
&Test1 setting1="Hello" setting2="World"/&
&add key="Hello" value="World" /&
&add key="Hello" value="World" /&
&/configuration&
我们对上面的自定义配置节进行说明。在声明部分使用&section type="System.Configuration.SingleTagSectionHandler"/&声明了一个配置节它的名字叫Test1,类型为SingleTagSectionHandler。在设置配置节部分使用 &Test1 setting1="Hello" setting2="World"/&设置了一个配置节,它的第一个设置的值是Hello,第二个值是World,当然还可以有更多。其它的两个配置节和这个类似。&下面我们看在程序中如何访问这些自定义的配置节。我们用过ConfigurationSettings类的静态方法GetConfig来获取自定义配置节的信息。
public static object GetConfig(string sectionName);
下面是访问这三个配置节的代码:
//访问配置节Test1IDictionary IDTest1 = (IDictionary)ConfigurationSettings.GetConfig("Test1");string str = (string)IDTest1["setting1"] +" "+(string)IDTest1["setting2"];MessageBox.Show(str);&&&&&&&& //输出Hello World
//访问配置节Test1的方法2string[] values1=new string[IDTest1.Count];IDTest1.Values.CopyTo(values1,0);MessageBox.Show(values1[0]+" "+values1[1]);&&&& //输出Hello World
//访问配置节Test2IDictionary IDTest2 = (IDictionary)ConfigurationSettings.GetConfig("Test2");string[] keys=new string[IDTest2.Keys.Count];string[] values=new string[IDTest2.Keys.Count];IDTest2.Keys.CopyTo(keys,0);IDTest2.Values.CopyTo(values,0);MessageBox.Show(keys[0]+" "+values[0]);
//访问配置节Test3NameValueCollection nc=(NameValueCollection)ConfigurationSettings.GetConfig("Test3");MessageBox.Show(nc.AllKeys[0].ToString()+" "+nc["Hello"]);&&&& //输出Hello World通过上面的代码我们可以看出,不同的type通过GetConfig返回的类型不同,具体获得配置内容的方式也不一样。
配置节处理程序返回类型
SingleTagSectionHandlerSystems.Collections.IDictionary
DictionarySectionHandlerSystems.Collections.IDictionary
NameValueSectionHandlerSystems.Collections.Specialized.NameValueCollection
3.2 自定义配置节组&配置节组是使用&sectionGroup&元素,将类似的配置节分到同一个组中。配置节组声明部分将创建配置节的包含元素,在&configSections&元素中声明配置节组,并将属于该组的节置于&sectionGroup&元素中。下面是一个包含配置节组的配置文件的例子:
下面是访问这个配置节组的代码:NameValueCollection nc=(NameValueCollection)ConfigurationSettings.GetConfig("TestGroup/Test");MessageBox.Show(nc.AllKeys[0].ToString()+" "+nc["Hello"]);&&&& //输出Hello World
配置App.config
1. 向项目添加app.config文件:
右击项目名称,选择&添加&&&添加新建项&,在出现的&添加新项&对话框中,选择&添加应用程序配置文件&;如果项目以前没有配置文件,则默认的文件名称为&app.config&,单击&确定&。出现在设计器视图中的app.config文件为:
&?xmlversion="1.0"encoding="utf-8" ?&&configuration&&/configuration&
在项目进行编译后,在bin\Debuge文件下,将出现两个配置文件(以本项目为例),一个名为&JxcManagement.EXE.config&,另一个名为&JxcManagement.vshost.exe.config&。第一个文件为项目实际使用的配置文件,在程序运行中所做的更改都将被保存于此;第二个文件为原代码&app.config&的同步文件,在程序运行中不会发生更改。
2.& connectionStrings配置节:
请注意:如果您的SQL版本为2005 Express版,则默认安装时SQL服务器实例名为localhost\SQLExpress,须更改以下实例中&Data Source=&一句为&Data Source=localhost\SQLE&,在等于号的两边不要加上空格。
&!--数据库连接串--&&&&& &connectionStrings&&&&&&&&& &clear /&&&&&&&&& &addname="conJxcBook" connectionString="Data Source=Initial Catalog=User&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& & providerName="System.Data.SqlClient" /&&&&& &/connectionStrings&
3. appSettings配置节:
appSettings配置节为整个程序的配置,如果是对当前用户的配置,请使用userSettings配置节,其格式与以下配置书写要求一样。
1 &!--进销存管理系统初始化需要的参数--&
&appSettings&
&addkey="userName"value="" /&
&addkey="password"value="" /&
&addkey="Department"value="" /&
&addkey="returnValue"value="" /&
&addkey="pwdPattern"value="" /&
&addkey="userPattern"value="" /&
10   &/appSettings&
4.读取与更新app.config
请注意:要使用以下的代码访问app.config文件,除添加引用System.Configuration外,还必须在项目添加对System.Configuration.dll的引用。
4.1 读取connectionStrings配置节
///&summary&///依据连接串名字connectionName返回数据连接字符串
1 ///&/summary&
2 ///&param &&/param&
3 ///&returns&&/returns&
4 private static string GetConnectionStringsConfig(string connectionName)
6 string connectionString =
ConfigurationManager.ConnectionStrings[connectionName].ConnectionString.ToString();
Console.WriteLine(connectionString);
return connectionS
4.2 更新connectionStrings配置节
1 ///&summary&
2 ///更新连接字符串
3 ///&/summary&
4 ///&param &连接字符串名称&/param&
5 ///&param &连接字符串内容&/param&
6 ///&param &数据提供程序名称&/param&
7 private static void UpdateConnectionStringsConfig(string newName, string newConString, string newProviderName)
bool isModified = false;
//记录该连接串是否已经存在
//如果要更改的连接串已经存在
if (ConfigurationManager.ConnectionStrings[newName] != null)
isModified = true;
//新建一个连接字符串实例
ConnectionStringSettings mySettings =
new ConnectionStringSettings(newName, newConString, newProviderName);
// 打开可执行的配置文件*.exe.config
Configuration config =
ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
// 如果连接串已存在,首先删除它
if (isModified)
config.ConnectionStrings.ConnectionStrings.Remove(newName);
// 将新的连接串添加到配置文件中.
config.ConnectionStrings.ConnectionStrings.Add(mySettings);
// 保存对配置文件所作的更改
config.Save(ConfigurationSaveMode.Modified);
// 强制重新载入配置文件的ConnectionStrings配置节
ConfigurationManager.RefreshSection("ConnectionStrings");
4.3 读取appStrings配置节
1 ///&summary&
2 ///返回*.exe.config文件中appSettings配置节的value项
3 ///&/summary&
4 ///&param &&/param&
5 ///&returns&&/returns&
6 private static string GetAppConfig(string strKey)
foreach (string key in ConfigurationManager.AppSettings)
if (key == strKey)
return ConfigurationManager.AppSettings[strKey];
return null;
4.4 更新connectionStrings配置节
1 ///&summary&
2 ///在*.exe.config文件中appSettings配置节增加一对键、值对
3 ///&/summary&
4 ///&param &&/param&
5 ///&param &&/param&
6 private static void UpdateAppConfig(string newKey, string newValue)
bool isModified = false;
foreach (string key in ConfigurationManager.AppSettings)
if(key==newKey)
isModified = true;
// Open App.Config of executable
Configuration config =
ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
// You need to remove the old settings object before you can replace it
if (isModified)
config.AppSettings.Settings.Remove(newKey);
// Add an Application Setting.
config.AppSettings.Settings.Add(newKey,newValue);
// Save the changes in App.config file.
config.Save(ConfigurationSaveMode.Modified);
// Force a reload of a changed section.
ConfigurationManager.RefreshSection("appSettings");
阅读(...) 评论()

我要回帖

更多关于 凯立德配置文件修改器 的文章

 

随机推荐