public void UpdateParticipants() { var participants = new List <ProjectParticipant>(); if (!Participantidfks.IsEmpty() && !ParticipantsToAdd.IsEmpty()) { participants = Participantidfks.Union(ParticipantsToAdd).ToList(); } else if (!Participantidfks.IsEmpty()) { participants = Participantidfks.ToList(); } else if (!ParticipantsToAdd.IsEmpty()) { participants = ParticipantsToAdd; } Participants = new ObservableCollection <ProjectParticipant>( participants.Where(p => !ParticipantsToDelete.Any(pp => pp == p)) ); RaisePropertyChanged(nameof(Participants)); }