private void UpdateSubjectRelationship(int bookCod, List <Subject> newSubjects, List <Subject> oldSubjects) { if (bookCod <= 0) { return; } List <Subject> subsToAdd = newSubjects .Where(o => !oldSubjects .Any(n => n.SubjectCod == o.SubjectCod)) .ToList(); if (subsToAdd.Any()) { _subjectRepository.AddManyRelations(bookCod, subsToAdd); } List <Subject> subsToDelete = oldSubjects .Where(o => !newSubjects .Any(n => n.SubjectCod == o.SubjectCod)) .ToList(); if (subsToDelete.Any()) { _subjectRepository.DeleteManyRelations(bookCod, subsToDelete); } }