private void Apply(FieldsAdded e) { foreach (var f in e.Fields) { if (!Fields.Contains(f)) { Fields.Add(f); } } UpdatedBy = e.UserId; UpdatedDateTime = e.TimeStamp; }
public void CheckFieldMove() { var comparer = new FieldDescriptor.MoveFieldComparer(); var moved = FieldsAdded.Intersect(FieldsRemoved, comparer).ToList(); foreach (var m in moved) { var fAdded = FieldsAdded.Single(x => comparer.Equals(x, m)); var fRemoved = FieldsRemoved.Single(x => comparer.Equals(x, m)); FieldsMoved.Add(fRemoved, fAdded); FieldsAdded.Remove(fAdded); FieldsRemoved.Remove(fRemoved); } }