private async void UpdateSettings() { StartScreenViewModel startViewModel = this; try { SettingVersionUpdater.Update(startViewModel._settigs); Settings.Save(startViewModel._settigs); } catch { await startViewModel.ShowErrorDialogAsync("Не удалось обновить настройки. Все настройки будут сброшены!"); } startViewModel.LoadCurrencies(); }
public static Settings LoadOrInit() { try { Settings settings1 = Settings.LoadSettings(); if (SettingVersionUpdater.IsNeedUpdateForNewVersion(settings1)) { Settings settings2; try { settings2 = SettingVersionUpdater.BackupSettings(settings1); } catch { try { settings2 = SettingVersionUpdater.BackupSettings(settings1); } catch (Exception ex) { int num = (int)MessageBox.Show("Резервная копия настроек не была сделана. Если вам НУЖНО НЕ ПОТЕРЯТЬ ваши настройки и АККАУНТЫ - перезапустите программу. напишите в поддержку. Ошибка: " + ex.Message, "Ошибка", MessageBoxButton.OK); throw; } } try { SettingVersionUpdater.Update(settings2); } catch { int num = (int)MessageBox.Show("Ошибка обновления настроек для новой версии. Если вам НУЖНО НЕ ПОТЕРЯТЬ ваши настройки и АККАУНТЫ - закройте программу и напишите в поддержку.", "Ошибка", MessageBoxButton.OK); throw; } } return(Settings._settings); } catch { return(SettingVersionUpdater.GetDefault()); } }