C# 如何重新加载app.config文件数据

C# 如何重新加载app.config文件数据,c#,C#,我有一个程序可以编辑app.config文件并保存它。但是,我可以编辑和保存,但如果不重新启动应用程序,我无法重新加载app.config数据。 我试过两种方法,我不确定是什么问题 这是我的密码 private void btnSave_Click(object sender, EventArgs e) { UpdateConfig("IP",radtxtIP.Text, "myApp.exe"); UpdateConfig("port", radtx

我有一个程序可以编辑app.config文件并保存它。但是,我可以编辑和保存,但如果不重新启动应用程序,我无法重新加载app.config数据。 我试过两种方法,我不确定是什么问题

这是我的密码

private void btnSave_Click(object sender, EventArgs e)
{            
     UpdateConfig("IP",radtxtIP.Text, "myApp.exe");
     UpdateConfig("port", radtxtPort.Text, "myApp.exe");
     LoadConfigData();
}
private void UpdateConfig(string key, string value, string fileName)
{
    var configFile = ConfigurationManager.OpenExeConfiguration(fileName);
    configFile.AppSettings.Settings[key].Value = value;
    configFile.Save(); 
}

 public void LoadConfigData()
 {
      ConfigurationManager.RefreshSection("appSettings");
      Properties.Settings.Default.Reload();
      radtxtIP.Text =  ConfigurationManager.AppSettings["IP"];
      radtxtPort.Text = ConfigurationManager.AppSettings["port"];  
 }
当我点击保存按钮时,它会给我旧的设置。 我在阅读stackoverflow中的一些问题后添加了这段代码,但没有任何用处

ConfigurationManager.RefreshSection("appSettings");
Properties.Settings.Default.Reload();
是否需要创建ConfigurationManager的新实例? 我使用配置数据的方式可以吗。?
我的应用程序在许多地方使用app.config数据。因此,当我更改配置数据时,必须重新启动应用程序。

您可能会发现这很有帮助

请确保按如下所示加载新设置

// Get the AppSettings section.
AppSettingsSection appSettingSection = (AppSettingsSection)config.GetSection(sectionName);

我用过这样的东西,希望这件容易

class SettingsService
{

    public static string GetSetting(string key)
    {
        System.Configuration.Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
        return config.AppSettings.Settings[key].Value.ToString();
    }

    public static void UpdateConfig(string key, string value )
    {
        var configFile = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
        configFile.AppSettings.Settings[key].Value = value;
        configFile.Save(ConfigurationSaveMode.Modified); 
    }
}
可以通过调用
UpdateConfig(“key1”,“value”)
方法更新appsettings 并且可以使用此
GetSetting(“键”)


注意:-当使用VS运行应用程序时,它只会更新ApplicationName.vshost.exe(配置文件)

谢谢您的回答,它真的很有帮助
AppSettingsSection appSettingSection=(AppSettingsSection)config.GetSection(sectionName)
但是这段代码给出了类似这样的东西
我想单独设置值