/// <summary> /// x修改老师的课程信息 /// </summary> /// <param name="selectCourse">选中的课程</param> /// <param name="instructor">修改的老师</param> private void UpdateInstructorsCourse(string[] selectCourse, Instructor instructor) { if (selectCourse == null) { instructor.courseAssignments = new List <CourseAssignment>(); return; } var selectcourseHS = new HashSet <string>(selectCourse); var instructorCourse = new HashSet <int>(instructor.courseAssignments.Select(a => a.CourseId)); foreach (var Course in _context.Course) { if (selectcourseHS.Contains(Course.CourseId.ToString())) { if (!instructorCourse.Contains(Course.CourseId)) { instructor.courseAssignments.Add(new CourseAssignment() { InstructorId = instructor.Id, CourseId = Course.CourseId }); } } else { if (instructorCourse.Contains(Course.CourseId)) { var CourseToRemove = instructor.courseAssignments.SingleOrDefault(a => a.CourseId == Course.CourseId); _context.Remove(CourseToRemove); } } } }