程序里面修改了配置文件的内容
下几行代码马上进行读取里面更新的内容这时候取到的内容往往还没有更新
有什么方法可以等待更新了在获取

解决方案 »

  1.   

    加一句
    Thread.Sleep(   2000   );   
      

  2.   

    试试在再次读取前调用Application.DoEvents()
      

  3.   


            private void button1_Click(object sender, EventArgs e)
            {
                ExeConfigurationFileMap file = new ExeConfigurationFileMap();
                file.ExeConfigFilename = @"..\..\App.config ";
                Configuration myConfig = System.Configuration.ConfigurationManager.OpenMappedExeConfiguration(file, ConfigurationUserLevel.None);
                AppSettingsSection appsection = (AppSettingsSection)myConfig.GetSection("appSettings");
                             string m_str1 = appsection.Settings["mappath"].Value;            
                file.ExeConfigFilename = @"..\..\App.config ";
                appsection.Settings["mappath"].Value = "456";
                
                myConfig.Save(System.Configuration.ConfigurationSaveMode.Minimal, true);            string m_str2 = appsection.Settings["mappath"].Value;
            }使用这种方法,我可以直接得到改变的数据。