我在下面定义了一对多的关系
public class Student{
[key]
public string Id{get; set;}
public string name{get; set:}
public virtual List<Enrollment> Enrol{get; set;}
}
public class Enrollment{
public int Id{get; set;}
[ForeignKey("student")]
public String StudentId{get; set;}
Public string ISC{get; set;}
public virtual Student student{get; set;}
}
我有一个表单允许我编辑学生实体,包括添加或删除一些注册。在提交表单后保存此数据时,注册是否也会更新,或者我是否必须单独更新注册?理想情况下,是否应该删除注册,然后重新插入或只更新(并且仅在有新项目存在时才进行插入)?
答案 0 :(得分:1)
你需要走图表。 EF不会自动更新关系。
此响应有一个插入/更新删除子对象的好例子: The relationship could not be changed because one or more of the foreign-key properties is non-nullable
还有一个很好的扩展方法,可以添加图形行走功能: https://github.com/refactorthis/GraphDiff