C# Winform 更改配置文件连接数据库不能立即生效

在程序运行过程中,配置文件只加载一次,所以动态更改后必须重新读取一次才会生效,以下是代码部分。

1、动态修改配置文件

          //通过Xml方式(需using System.xml;) 

           XmlDocument doc = new XmlDocument();  
            doc.Load(Application.ExecutablePath + ".config");  
            //XmlNode node = doc.SelectSingleNode(@"//add[@key='" + key + "']"); // 定位到add节点  
            XmlNode node = doc.SelectSingleNode(@"//add[@name='dbConnStr']"); // 定位到add节点
            XmlElement element = (XmlElement)node;
            element.SetAttribute("connectionString", "Data Source=.;Initial Catalog="";Integrated Security=True"); // 赋值 
            doc.Save(Application.ExecutablePath + ".config");
            ConfigurationManager.RefreshSection("connectionStrings"); // 刷新节点

2、每次操作数据库的时候重新读取配置文件节点

      string connStr =ConfigurationManager.ConnectionStrings["dbConnStr"].ConnectionString;