惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Stack Overflow Blog
Stack Overflow Blog
J
Java Code Geeks
Last Week in AI
Last Week in AI
人人都是产品经理
人人都是产品经理
博客园 - 【当耐特】
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
C
Check Point Blog
月光博客
月光博客
腾讯CDC
Engineering at Meta
Engineering at Meta
博客园 - Franky
Vercel News
Vercel News
D
Docker
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
F
Fortinet All Blogs
Microsoft Security Blog
Microsoft Security Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
雷峰网
雷峰网
Google DeepMind News
Google DeepMind News
Martin Fowler
Martin Fowler
GbyAI
GbyAI
B
Blog
Hugging Face - Blog
Hugging Face - Blog
T
Tailwind CSS Blog

博客园 - 孙英雄

C# 窗体抖动 “嵌入式资源”的调用 - 孙英雄 - 博客园 SQL2000与Oracle的分布式操作 只能输入数字的TextBox---补充 只能输入数字的TextBox DevExpress7.3.4部分控件继承后无法编辑解决方案 Mssql安全设置 .NET中如何生成静态页 - 孙英雄 - 博客园 ASP.NET跨页面传值技巧总结 预报:卡巴斯基v6.0个人版KEY获取器---修正版 - 孙英雄 - 博客园 WEB开发调试利器:Firebug SQL函数 关注SharpDevelop的一些问题 又一款Auto病毒专杀工具,可解决双击无法打开盘符的问题 Office2007体验及下载 简单讲述基于SQL SERVER 分页的存储过程 Access中的模糊查询 - 孙英雄 - 博客园 DataGrid控件排序方法 Asp.net中的常用小技巧
动态读取App.Config
孙英雄 · 2007-03-19 · via 博客园 - 孙英雄

关于APP.CONFIG

      在做Winform开发时,免不了把一些配置信息写到APP.CONFIG文件中,当程序生成后APP.CONFIG会变成以程序名+CONFIG的文件
即,如程序名为A,那么生成后的APP.CONFIG文件会变成A.EXE.CONFIG文件!

正文
      以偶在做项目为例.程序要根据用户设定的时间,自动检查OUTLOOK的"垃圾邮件箱"垃圾邮件.!偶把设定后的时间保存在了APP.CONFIG中
用户设定后再重新读取值显示到界面上,用的方法:ConfigurationSettings.AppSettings,结果发现没有读到.后来才明白,原来CONFIG文件只在程序初次运行才读取值.如果在程序运行中,改变其值然后读取,其实读的是缓存的文件.并不是CONFIG文件本身.如果想动态读取就要用XML的读方法
下面是偶写的一个方法,没啥技术含量,在此记下方便日后查询!

/// <summary>
/// Read confing
/// </summary>
/// <param name="path"></param>
/// <param name="appKey"></param>
/// <returns></returns>

public string GetConfigValue(string path,string appKey)  
{     
  XmlDocument xDoc 
= new XmlDocument();     
  
try
   
{
     xDoc.Load(path);     
    
//xDoc.Load(System.Windows.Forms.Application.ExecutablePath+".config");
    XmlNode xNode;     
    XmlElement xElem;     
    xNode 
= xDoc.SelectSingleNode("//appSettings");    
    xElem 
= (XmlElement)xNode.SelectSingleNode("//add[@key='"+appKey+"']");     
    
if(xElem!=null)   
     
return xElem.GetAttribute("value");     
    
else     
     
return   "";
   }

 
catch(Exception)
   
{
     
return "";
   }

}