1

有没有办法将子对象保存在父子对象集合中,并将其设置为父对象的导航属性,而无需往返数据库?下面的例子不起作用

public class Parent
{
    int Id { get; set; }
    int? ChildId { get; set; }
    Child Child { get; set; }

    public virtual ICollection<Child> Children { get; set; }
}
public class Child
{
    int Id { get; set; }
    public Parent Parent { get; set; }
}

....

var p = new Parent();
var c = new Child();

p.Child = c;
p.Children.Add(c);

Context.Set<Parent>().Add(p);
Context.SaveChanges();

编辑

上面的示例在调用“savechanges()”时会引发此错误。

无法确定相关操作的有效排序。由于外键约束、模型要求或存储生成的值,可能存在依赖关系。

4

0 回答 0