in SamplesV1/ADFSecurePublish/SecurePublishForm/MainWindow.xaml.cs [57:102]
private void LoadSettings()
{
string settingsFile = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.UserProfile),
"SecurePublishSettings.json");
if (File.Exists(settingsFile))
{
try
{
settings = JsonConvert.DeserializeObject<AppSettings>(File.ReadAllText(settingsFile));
ControlVisiblity = "Visible";
noSettings.Visibility = Visibility.Hidden;
}
catch
{
ShowNoSettings();
string backUpFile = Path.Combine(Path.GetDirectoryName(settingsFile),
Path.GetFileNameWithoutExtension(settingsFile) + "_BackUp.json");
File.Move(settingsFile, backUpFile);
noSettings.Content =
$"There was a problem reading your user settings. The user settings file is corrupted.\r\nA backup has been saved to {backUpFile}. Please re-enter them again.\r\n" +
enterSettingsMsg;
return;
}
List<string> validationErrors = ValidateSettings();
if (validationErrors.Any())
{
ShowNoSettings();
noSettings.Content =
$"There was a problem reading your user settings.\r\n{string.Join("\r\n", validationErrors)}\r\n{enterSettingsMsg}";
return;
}
settingsContextManager = new SettingsContextManager(settings);
subscriptionList.ItemsSource = settings.Subscriptions.Select(x => x.FriendlyName).ToList();
subscriptionList.SelectedIndex = 0;
}
else
{
ShowNoSettings();
noSettings.Content = "No user settings were found. " + enterSettingsMsg;
}
}