我对 Visual Studio 中存储和管理桌面应用程序设置的这两种机制的明显冗余感到非常困惑:
app.config
文件,将项目添加到 <appSettings>
部分。可以使用 ConfigurationManager
类从代码中检索这些。Settings
类,用于在运行时对设置进行类型安全检索。这两种机制似乎服务于相同(或几乎相同)的目的。我知道存在一些差异,但我也对这种重叠及其后果感到困惑。例如,当我使用 VisualStudio 向 Settings.settings
文件添加设置时,我输入的所有信息最终也会作为条目出现在 app.config
文件中。显然,存在一种同步机制: 如果我更改了 app.config
文件中的设置,Visual Studio 会提示我在下次在编辑器中打开 Settings.settings
文件时更新它。
我的问题是:
Settings.settings
上使用 app.config
最常见的情况是什么,反之亦然?Settings.settings
,并且在部署后更改了 app.config
中的值,会发生什么情况?由于 Settings.settings
已经被编译和分发,因此无法进行同步。注意。我一直在寻找关于这个话题的问题,但是我更加困惑。例如,这个问题的答案是相当矛盾的,没有多少光亮。
注2。我知道 app.config
是一个设计时文件名,并且熟悉 Visual Studio 将其复制并重命名为可执行文件夹的动态过程。