用户特定设置是否需要appname.exe.config?

时间:2011-01-17 16:15:58

标签: c# .net winforms settings

我正在构建一个简单的winforms应用程序,它使用内置设置来保存程序选项。所有设置均为每个用户。

正如我从生成的cs文件中看到的那样,默认设置嵌入在源代码中,但应用程序在启动时仍会读取appname.exe.config文件。如果我删除该文件,应用程序似乎工作正常,但我想确保它不会破坏任何东西。

如果我只使用每用户设置,那么所需的文件是什么?

3 个答案:

答案 0 :(得分:1)

您应该使用用户设置而不是配置文件。有关更多信息,请参阅this文章,包括如何读/写用户设置。

答案 1 :(得分:0)

如果您使用的是Application Settings,并且您希望持久保存设置,那么这就是保存选项的位置。如果删除文件,只要用户更改设置并且您正在设置设置,它就会重新创建它。

答案 2 :(得分:0)

设置设计器将默认值嵌入[DefaultSettingValue]属性中。该属性的备注部分中的以下部分是相关的:

  

不同的设置提供商可能有   不同的要求或限制   关于使用   DefaultSettingValueAttribute。对于   例如,LocalFileSettingsProvider   不需要此属性,并且   将覆盖由...提供的任何值   这个属性,如果有的话   值 - 默认或用户修改 -   已存在于数据存储中。

LocalFileSettingsProvider是默认提供程序。所以,它就在那里,但它没有被使用。