.NET ApplicationSettingsBase我每次加载时都应该调用Upgrade()吗?

时间:2010-08-17 00:51:17

标签: c# .net upgrade application-settings applicationsettingsbase

我们有来自ApplicationSettingsBase的应用程序设置。当我们推出新版本的应用时,我们需要致电:

  //
  // Summary:
  //     Updates application settings to reflect a more recent installation of the
  //     application.
  public virtual void Upgrade();

(来自元数据)

现在有一些棘手的方法可以确定您的设置是否需要升级,例如this post,这对我来说只会升级您的设置一次。现在我可以将我的应用程序的当前版本存储在设置中,并在每次实例化设置时进行比较,如果它与当前版本不同,那么我可以升级。

我的问题是为什么不在每次实例化设置时调用Upgrade()?这样,我知道我永远不会过时。

1 个答案:

答案 0 :(得分:6)

链接帖子中描述的方法确实有效。我自己也用过那种方法。当您的应用程序版本更改时,设置将重置为默认值,UpdateRequired属性将为true

所以不,每次你的应用开始时你都不必致电Upgrade