我有两个由外键连接的实体,因此当我创建第二个实体时,我必须指定父实体ID。
创建父实体ID时会自动生成父实体ID,因此如何在创建子项时获取该ID以进行指定?
db.ParentClasses.Add(new ParentClass
{
name = "test"
});
db.ChildClasses.Add(new ChildClass
{
name = "test",
someValue = "thing";
parentID = ?????? // I have just created the parent above, how do I get the ID?
});
db.SaveChanges();
我尝试在不指定父实体ID的情况下运行它,并且不会抛出任何错误,但只创建了父实体。未创建子实体,也不会引发错误。
答案 0 :(得分:1)
而不是子类中的parentID
,而是使用父类对象本身。这是快速伪代码。
var parent = new ParentClass() { name = "parent"};
var child = new ChildClass() { name = "child", parent = parent };
db.ParentClasses.Add(parent);
db.ChildClasses.Add(child);
db.SaveChanges();