gpt4 book ai didi

c# - 如何在控制台应用程序中将值永久写入 app.config 文件?

转载 作者:行者123 更新时间:2023-12-04 02:07:05 29 4
gpt4 key购买 nike

在控制台应用程序项目中,我试图将值写入 app.config 文件并永久保存,但只能将其保存在内存中。我已经尝试了 Write values in app.config file 中的所有解决方案,但没有一个适合我。

有什么想法可以使更改永久生效吗?

应用程序配置文件:

<appSettings>
<add key="test" value="123456" />
</appSettings>

类有两个方法只保存值到内存:

public static class ConfigurationHelper
{

public static void SetSetting(string key, string value)
{
Configuration configuration = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
configuration.AppSettings.Settings[key].Value = value;
configuration.Save(ConfigurationSaveMode.Modified);
ConfigurationManager.RefreshSection("appSettings");
}


public static void SetSetting2(string key, string value)
{
Configuration configuration = ConfigurationManager.
OpenExeConfiguration(Assembly.GetExecutingAssembly().Location);
configuration.AppSettings.Settings[key].Value = value;
configuration.Save();
ConfigurationManager.RefreshSection("appSettings");
}

}

写出更改的简单测试,但是当重建项目或在记事本中打开 app.config 时,更改未保存:

[Test]
public void FirstTest()
{
Console.WriteLine("Value before: " + ConfigurationHelper.Get<string>("test"));
ConfigurationHelper.SetSetting2("test", "NewValue");
Console.WriteLine("Value after: " + ConfigurationHelper.Get<string>("test"));
}

最佳答案

据我所知,来自 app.config 的信息在创建程序时被使用,但 app.config 键和值是只读的,但你没有要使用 app.config 在应用程序中存储值,请尝试使用此方法:

第一步
转到 solution explorer -> Properties -> Settings 并创 build 置文件。
第 2 步
添加您要使用的设置
第 3 步
在代码中使用

添加 using yourNameSpace.Properties;

读取设置值:
var name = Settings.Default.Name1;

setting的设定值:
Settings.Default.Name1 = value;

保存设置:
Settings.Default.Save();

希望对你有帮助。

关于c# - 如何在控制台应用程序中将值永久写入 app.config 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42396448/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com