.NET ApplicationSettingsBase Должен ли я вызывать Upgrade () каждый раз при загрузке? - PullRequest
8 голосов
/ 17 августа 2010

У нас есть настройки приложения, полученные из ApplicationSettingsBase.Когда мы запускаем новую версию нашего приложения, нам нужно позвонить:

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

(из метаданных)

Теперь есть несколько хитрых способов определить, нужно ли вам изменятьнапример, этот пост , который, как мне кажется, обновит ваши настройки только один раз.Теперь я могу сохранить текущую версию своего приложения в настройках и сравнивать каждый раз, когда я создаю экземпляры настроек, если она отличается от текущей версии, я мог бы обновить ее.

Мой вопрос: почему бы просто не звонить Upgrade() каждый раз, когда я создаю настройки?Таким образом, я знаю, что никогда не устарею.

1 Ответ

6 голосов
/ 17 августа 2010

Метод, описанный в связанном посте, работает. Я сам использовал этот метод. При изменении версии вашего приложения настройки будут сброшены до значений по умолчанию, а свойство UpdateRequired будет true.

Так что нет, вам не нужно звонить Upgrade каждый раз, когда запускается ваше приложение.

...