app.config 只能读不能写? 为什么MS不提供方法?

验证码识别 2011-02-04 04:29:52
如题
...全文
95 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
wuyq11 2011-02-04
  • 打赏
  • 举报
回复
自己怎么写的,肯定能修改
什么问题
Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
config.AppSettings.Settings.Remove(key);
config.AppSettings.Settings.Add(key, value);
config.Save(ConfigurationSaveMode.Modified);
ConfigurationManager.RefreshSection("appSettings");
wuyq11 2011-02-04
  • 打赏
  • 举报
回复
app.config读写
Configuration C=ConfigurationManager.OpenExeConfiguration(String .Empty);
C.AppSettings.Settings["Server"].Value = "";
C.AppSettings.Settings["Database"].Value = "";
C.AppSettings.Settings["Uid"].Value = "sa";
C.AppSettings.Settings["Pwd"].Value = "123";
C.Save(ConfigurationSaveMode.Modified);



threenewbee 2011-02-04
  • 打赏
  • 举报
回复
当然可以读写。
yalan 2011-02-04
  • 打赏
  • 举报
回复
概括:
需要引用xml命名空间:using System.Xml;
然后:XmlDocument doc=new XmlDocument();
  string strFileName=AppDomain.CurrentDomain.BaseDirectory.ToString()+"Code.exe.config";

  doc.Load(strFileName);

然后处理要操作的内容

最后doc.Save(strFileName);


就是一个简单的xml读写问题而已,LZ不要把问题想的太难了而对自己造成压力,思想上要藐视问题行动上要重视问题。
祝你有更大的提高!
yalan 2011-02-04
  • 打赏
  • 举报
回复
app.config可以读写啊

1、读取配置信息
下面是一个配置文件的具体内容:
< ?xml version="1.0" encoding="utf-8"?>
  < configuration>

  < appSettings>

  < add key="ConnenctionString" value="*" />

  < add key="TmpPath" value="C:\Temp" />

  < /appSettings>

  < /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.Count;i++)

  {

  //获得将当前元素的key属性

  XmlAttribute att=nodes[i].Attributes["key"];

  //根据元素的第一个属性来判断当前的元素是不是目标元素

  if (att.Value=="ConnectionString")

  {

  //对目标元素中的第二个属性赋值

  att=nodes[i].Attributes["value"];

  att.Value=ConnenctionString;

  break;

  }

  }

  //保存上面的修改

  doc.Save(strFileName);

  }

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧