我有两个实体,Parent
并且Child
在客户端我创建Parent
然后调用context.submitChanges
在InsertParent(Parent parent)
我做的服务器端:
InsertParent(Parent parent)
{
Child child = this.ObjectContext.Childs.CreateObject();
parent.child = child;
if ((parent.EntityState != EntityState.Detached))
{
this.ObjectContext.ObjectStateManager.ChangeObjectState(parent, EntityState.Added);
}
else
{
this.ObjectContext.Parents.AddObject(parent);
}
}
现在我有两个问题。
在 if else 之前Parent.id
是 0,在它仍然是 0 之后,但在数据库中填充了它。
另一个是,Child
被保存但Child.ParentId
为0。
我不明白为什么。
实现这种行为的正确方法是什么?我应该直接调用SaveChanges()
上下文吗?