删除关联
删除关联,即删除隐式关联实例。通过给隐式关联型的关联引用对象设值(对于多重性为0,1的)或者为关联引用对象移除元素(对于多重性为0,*的)即可删除关联,这二者的本质都是移除了关联实例,重新设值可以理解为解除关联后又新增了关联。 示例代码如下:
//对象上下文
var context = new StudentAndClassContext();
//查询出班级并强制包含学生
var cla = context.Classes.Include(p => p.Students).FirstOrDefault();
//此处是为了查出要移除的学生主键 在业务场景中 由其他部分传入
var student6 = context.Students.FirstOrDefault(p => p.Name == @"小6")?.StudentId;
//找到要移除的
var index = cla?.Students.FindIndex(p => p.StudentId == student6);
//移除
cla?.Students.RemoveAt(index.Value);
//保存
context.SaveChanges();