private void FixupUser1(User previousValue) { if (IsDeserializing) { return; } if (previousValue != null && previousValue.TimeEntries1.Contains(this)) { previousValue.TimeEntries1.Remove(this); } if (User1 != null) { if (!User1.TimeEntries1.Contains(this)) { User1.TimeEntries1.Add(this); } UserID = User1.UserID; } if (ChangeTracker.ChangeTrackingEnabled) { if (ChangeTracker.OriginalValues.ContainsKey("User1") && (ChangeTracker.OriginalValues["User1"] == User1)) { ChangeTracker.OriginalValues.Remove("User1"); } else { ChangeTracker.RecordOriginalValue("User1", previousValue); } if (User1 != null && !User1.ChangeTracker.ChangeTrackingEnabled) { User1.StartTracking(); } } }