zoukankan
html css js c++ java
winform app.config文件的动态配置
获取
获取
应用程序exe.config文件中 节点value值
/// <summary> /// 功能: 读取应用程序exe.config文件中 /// appSettings节点下 节点add属性值 /// 根据add的属性值key来读取value值 /// </summary> /// <param name="appKey">属性key值</param> /// <returns></returns> public string GetConfigValue(string appKey) { XmlDocument xDoc = new XmlDocument(); try { //System.Windows.Forms.Application.ExecutablePath可执行文件路径(包括执行文件名称) //加载文件 xDoc.Load(System.Windows.Forms.Application.ExecutablePath + ".config"); XmlNode xNode; XmlElement xElem; //选取appSettings节点 xNode = xDoc.SelectSingleNode("//appSettings"); //根据key属性值appKey选择节点 xElem = (XmlElement)xNode.SelectSingleNode("//add[@key='" + appKey + "']"); if (xElem != null) //返回value属性值 return xElem.GetAttribute("value"); else return ""; } catch (Exception) { return ""; } }
上面是方法:
下面为调用:
GetConfigValue("key值");
修改
上面是方法:
修改
应用程序exe.config文件及App.config中 节点value值
/// <summary> /// 功能:动态配置app.config /// </summary> /// <param name="AppKey">节点属性key值</param> /// <param name="AppValue">节点属性value值</param> private void SetValue(string AppKey, string AppValue) { for (int i = 0; i < 2; i++) { XmlDocument doc = new XmlDocument(); doc.Load(AppConfig(i)); XmlNode node = doc.SelectSingleNode(@"//appSettings"); XmlElement ele = (XmlElement)node.SelectSingleNode(@"//add[@key='" + AppKey + "']"); ele.SetAttribute("value", AppValue); doc.Save(AppConfig(i)); } } /// <summary> /// 功能:重置数据库connectionStrings连接字符串 /// 时间:2013年12月31日11:09:57 /// </summary> /// <param name="strKey">节点属性name值</param> /// <param name="strValue">节点属性connectionString值</param> /// <returns></returns> private void WriteXml(string strKey, string strValue) { //循环2次 //分别修改App.config及应用程序exe.config connectionStrings节点值 for (int i = 0; i < 2; i++) { XmlDocument doc = new XmlDocument(); doc.Load(AppConfig(i)); XmlNode node = doc.SelectSingleNode(@"//connectionStrings"); XmlElement ele = (XmlElement)node.SelectSingleNode(@"//add[@name='" + strKey + "']"); ele.SetAttribute("connectionString", strValue); doc.Save(AppConfig(i));//保存 } } /// <summary> /// 功能:获取配置文件路径 /// </summary> /// <param name="i"></param> /// <returns></returns> public string AppConfig(int i) { if (i == 0)//获取应用程序目录下App.config路径 { int intPos = Application.StartupPath.Trim().IndexOf("bin") - 1; string strDirectoryPath = System.IO.Path.Combine(Application.StartupPath.Substring(0, intPos), "App.config"); return strDirectoryPath; } else//获取应用程序exe目录 如:MultiThreadDemo.exe.config目录路径 { return System.Windows.Forms.Application.ExecutablePath + ".config"; } }
下面为调用:
查看全文
相关阅读:
牛客(4) 重建二叉树
牛客(3)从尾到头打印链表
牛客(2)字符串替换
牛客(1)二分查找
同义词+序列+视图+临时表
用户+授权
控制文件+日志文件
oracle表的基本操作
Linux(CentOS6.8)配置Redis
Linux(CentOS6.8)配置ActiveMQ
原文地址:https://www.cnblogs.com/PingleDay/p/3477995.html
最新文章
【JVM之美】引用类型
【JVM之美】运行时数据区
【数据结构与算法之美】数据结构与算法总览
【剑指offer】10.青蛙跳台阶问题
【每日一题-leetcode】66.加1
【数据结构与算法之美】十大排序思路及动图演示 代码实现
【每日一题-leetcode】 88. 合并两个有序数组
【剑指offer】9.斐波那契数列
【剑指offer】8.用两个栈实现队列
迪杰斯特拉算法 Dijkstra
热门文章
deque学习
散列表(哈希)
快速排序
插入排序
冒泡排序
Java学习笔记1
string STL类库学习
排序算法简介
牛客(6)旋转数组的最小元素
牛客(5)两个栈来实现一个队列
Copyright © 2011-2022 走看看