private void CurrentSnapshot_entityChangedEventHandler(object sender, Events.EntityChangeEventArgument e) { // Check if there is a change if (!e.Change.HasChanged) { return; } // check if there is already a change registered for the property var alreadyRegistered = Changes.FirstOrDefault(a => a.Equals(e.Change)); if (alreadyRegistered == null) { Changes.Add(e.Change); } else { alreadyRegistered.Update(e.Change); } }