public async Task <StorageFile> Save() { try { string saveString = _currentGame.Serialize(); if (saveString == "") { return(null); } string fileName = GameName + ".catangame"; var folder = await StaticHelpers.GetSaveFolder(); IStorageItem isiLocal = await folder.TryGetItemAsync(fileName); if (isiLocal != null) { var ret = await StaticHelpers.AskUserYesNoQuestion($"Overwrite {fileName}?", "yes", "no"); if (!ret) { return(null); } } var option = CreationCollisionOption.ReplaceExisting; var file = await folder.CreateFileAsync(fileName, option); await FileIO.WriteTextAsync(file, saveString); if (CurrentGameName != GameName) { _savedGameNames.Add(GameName); _savedStoragefiles.Add(GameName, file); CurrentGameName = GameName; } return(file); } catch (Exception exception) { string s = StaticHelpers.GetErrorMessage($"Error saving to file {GameName}", exception); MessageDialog dlg = new MessageDialog(s); await dlg.ShowAsync(); } return(null); }
public async Task SaveSettings(string filename) { try { string saveString = Serialize(); if (saveString == "") { return; } StorageFolder folder = await StaticHelpers.GetSaveFolder(); CreationCollisionOption option = CreationCollisionOption.ReplaceExisting; StorageFile file = await folder.CreateFileAsync(filename, option); await FileIO.WriteTextAsync(file, saveString); } catch (Exception exception) { string s = StaticHelpers.GetErrorMessage($"Error saving to file {filename}", exception); await StaticHelpers.ShowErrorText(s); } }