c# - C# 设置文件不显示更改
问题描述
我在我的 C# 控制台应用程序中玩弄一些设置。我想将一个字符串保存到 settings.settings 文件中,该文件通过在 Designview 中创建一个设置来工作(我称之为 teststring)。我分配了值“Hello World!”。当我在运行时访问它时,Properties.Settings.Default.teststring
我会取回分配的值。到目前为止,一切都很好。现在这就是事情变得奇怪的地方:当我分配一个新值Properties.Settings.Default.teststring = "This is a new test"
并保存它时Properties.Settings.Default.Save();
,该值会按预期保存。
但是:设计视图中的值保持不变(“Hello World!”),当我现在更改设计视图中的值时,它不会影响存储的设置。它将返回“这是一个新的测试”。值的范围当然设置为“用户”,以便可以在运行时更改。
我必须更改什么才能使设置-设计-视图保持更新。如果不在 settings.settings 文件中,值“这是一个新测试”存储在哪里?
解决方案
我无法发表评论,因此我将其发布为答案,但更新的设置存储在文本文件中C:\Users\<username>\AppData\Local\<company_name>\<app_name>randomcharacters\1.0.0.0\user.config
您可以通过编程方式获取路径
public static string GetDefaultExeConfigPath(ConfigurationUserLevel userLevel)
{
try
{
var UserConfig = ConfigurationManager.OpenExeConfiguration(userLevel);
return Path.GetDirectoryName(UserConfig.FilePath);
}
catch (ConfigurationException e)
{
return e.Filename;
}
}
不知道如何回答设计师的问题,或者这是否是您所追求的,但也许它对您有所帮助。
推荐阅读
- python - 是否有允许在列中查找两个字符串的 python 函数?
- php - 奇怪的 Elasticsearch 和 Curl 问题。curl 和 wget 可以连接到 elasticsearch 但收不到数据
- c# - ApplicationRoleManager - 没有任何类型参数
- python - 循环一个范围,然后根据我当前的条件以不同的方式分配值
- android - 使用 Facebook sdk 在 Facebook 上与 ShareDialog 共享视频后如何隐藏或关闭发送进度对话框
- kotlin - Kotlin 中的非空检查有什么区别?
- python - 如何使用基于日期的 Python 将数据导入多个 CSV 文件
- amazon-web-services - s3图片文件按大小排序
- html - Bootstrap - 当宽度改变时,div 中的元素分成 2 行
- python - Python - 按值和按引用函数参数