我有两个模型DestinationEntity和SourceEntity,我要查看的是我首先需要获取目标详细信息,之后我需要获取源详细信息,因为我想选择多个目标并保存两个都有单独的CRUD条目,如何我可以做到吗
源可以有多个目的地,而目的地可以有一个源
这是我的实体
public class DestinationEntity
{
public int ID {get; set;}
public string DName {get; set;}
public string DPath {get; set;}
public SourceEntity source {get; set;}
}
public class SourceEntity
{
public int ID {get; set;}
public string SName {get; set;}
public string SPath {get; set;}
public ICollection<DestinationEntity> Destinations {get; set;}
}
答案 0 :(得分:0)
创建和删除非常明显,更新是一个棘手的问题。基本上,有三种方法。由于每个目的地都必须有一个并且只有一个来源。
一个,删除所有目标,然后将它们重新添加到源。这将删除“孤立的”目的地,这是最简单的暴力方法。
两个,让用户界面传达添加了哪些目的地和删除了哪些目的地。或者,您可以通过检查输入中的FK(null = new)来自己检测它,然后将现有值与保存的值进行比较,然后删除“已删除”的目的地。更加棘手。
三,使用JSONPatchDocument格式,该格式提供了有关如何更新保存的实体的路线图。