我正在尝试更新多对多关系之间的关系。
我有这个配置:
this.HasMany(student => student.Courses)
.WithMany(course => course.Students)
.Map(mc =>
{
mc.ToTable("T_Student_Course");
mc.MapLeftKey("StudentId");
mc.MapRightKey("CourseId");
});
我有一个MultiSelectList,我选择要添加到学生的课程,并在Action的代码中我有这个:
student.Courses = new List<Course>();
foreach (var courseId in SelectedCourses)
{
Course course = _db.Courses.FirstOrDefault(c => c.Id == courseId);
student.Courses.Add(course);
}
_db.SaveEntity(student);
这不会删除已取消选择的课程。它将它们留在映射表中。如何删除Course_1和Course_2并添加新的Course_3?或者,删除Course_1并退出之前选择的Course_2