如何在程序执行之间保留项目设置?

问题描述:

在我的应用程序中,我允许用户选择一个包含一些数据的文件,读取数据并在用户关闭并再次打开应用程序时应该可用。我认为,一个可以存储在设定值,所以我写了一个类:如何在程序执行之间保留项目设置?

public static class SettingsManager 
    { 
     public static string ComplexValidationsString 
     { 
      get { return (string)Properties.Settings.Default["ComplexValidations"]; } 
      set { Properties.Settings.Default["ComplexValidations"] = value; } 
     } 

     //some more 
    } 

设定值和关闭值丢失的应用程序之后。有没有类似的方式来保证价值?我曾经看过一些代码来替换写在配置文件中的数据,所以我想有一种方法。

这是那么容易,因为

Properties.Settings.Default.Save(); 

你可以把这个在你static void Main()方法

除了YBO的答案,你应该知道,.NET保存设置,涉及到一个文件夹中的文件你从哪里启动应用程序,以及它是什么版本号。

这意味着如果您更新版本号(或从不同的地方运行),您将得到一组新的空白设置。我添加了一个属性,可以让我检测我们第一次运行新版本的时间,并尝试从先前的设置升级。您可以使用检索旧设置。

Settings.Default.GetPreviousVersion("MyPropertyName"); 

你需要记住赶上SettingsPropertyNotFoundException如果自早期版本增加了新的特性。