static void Main(string[] args) { serializer = new JsonSerializerService(); readerWriter = new ReaderWriterService(); Student bob = new Student() { FirstName = "Bob", LastName = "Bobsky", Age = 37, Pets = new string[] { "Dog1", "Dog2", "Dog3", "Cat1" } }; string jsonString = serializer.SerializeStudent(bob); readerWriter.WriteFile(filePath, jsonString); string jsonFromFile = readerWriter.ReadFile(filePath); Student student = serializer.DeserializeStudent(jsonFromFile); #region NewtonsoftJson string newtonsoftJasonString = JsonConvert.SerializeObject(student); Student newtonsoftStudent = JsonConvert.DeserializeObject <Student>(jsonFromFile); #endregion }
public override async Task <UnsavedChangesResult> PromptForUnsavedChanges() { var result = UnsavedChangesResult.Discarded; if (this.IsDirty) { string filename = Drawing.Settings.FileName ?? "(Untitled)"; var dialog = MessageBox.Show(string.Format("Save changes to '{0}'?", filename), "Unsaved changes", MessageBoxButton.YesNoCancel); switch (dialog) { case MessageBoxResult.Yes: var fileName = Drawing.Settings.FileName; if (fileName == null) { fileName = await FileSystemService.GetFileNameFromUserForSave(); } if (fileName == null) { return(UnsavedChangesResult.Cancel); } var stream = await FileSystemService.GetStreamForWriting(fileName); if (await ReaderWriterService.TryWriteDrawing(fileName, Drawing, ActiveViewPort, stream)) { result = UnsavedChangesResult.Saved; } else { result = UnsavedChangesResult.Cancel; } break; case MessageBoxResult.No: result = UnsavedChangesResult.Discarded; break; case MessageBoxResult.Cancel: result = UnsavedChangesResult.Cancel; break; } } else { result = UnsavedChangesResult.Saved; } return(result); }