C# 如何重新加载app.config文件数据
我有一个程序可以编辑app.config文件并保存它。但是,我可以编辑和保存,但如果不重新启动应用程序,我无法重新加载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
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)
但是这段代码给出了类似这样的东西
我想单独设置值