public static void AddChanges(this List <DocumentsChanges> docChanges, DocumentsChanges.ChangeType change) { docChanges.Add(new DocumentsChanges { Change = change }); }
private static void NewChange(string fieldPath, string name, object newValue, object oldValue, List <DocumentsChanges> docChanges, DocumentsChanges.ChangeType change) { docChanges.Add(new DocumentsChanges { FieldName = name, FieldNewValue = newValue, FieldOldValue = oldValue, Change = change, FieldPath = fieldPath }); }
public WhatChanged() { using (var store = new DocumentStore()) { #region what_changed_2 using (IDocumentSession session = store.OpenSession()) { Assert.False(session.Advanced.HasChanges); session.Store(new Employee { FirstName = "John", LastName = "Doe" }); Assert.True(session.Advanced.HasChanges); } #endregion #region what_changed_4 using (IDocumentSession session = store.OpenSession()) { session.Store(new Employee { FirstName = "Joe", LastName = "Doe" }); IDictionary <string, DocumentsChanges[]> changes = session.Advanced.WhatChanged(); DocumentsChanges[] employeeChanges = changes["employees/1"]; DocumentsChanges.ChangeType change = employeeChanges[0].Change; // DocumentsChanges.ChangeType.DocumentAdded } #endregion #region what_changed_5 using (IDocumentSession session = store.OpenSession()) { Employee employee = session.Load <Employee>("employees/1"); // 'Joe Doe' employee.FirstName = "John"; employee.LastName = "Shmoe"; IDictionary <string, DocumentsChanges[]> changes = session.Advanced.WhatChanged(); DocumentsChanges[] employeeChanges = changes["employees/1"]; DocumentsChanges change1 = employeeChanges[0]; // DocumentsChanges.ChangeType.FieldChanged DocumentsChanges change2 = employeeChanges[1]; // DocumentsChanges.ChangeType.FieldChanged } #endregion } }