为了账号安全,请及时绑定邮箱和手机立即绑定

EF Add Object 是自动创建的子对象吗?

EF Add Object 是自动创建的子对象吗?

C#
收到一只叮咚 2022-11-22 15:49:12

如果我有一个 Parent 对象,其中包含对 Child 表的外键引用,并且我向 Parent 添加了一个 Child,我是否需要分别在 Child 和 Parent 上调用 Context.Add() ?或者只是父母?

鉴于:

Parent.childobj=child;//foreign key reference set to the child object

这个:

mycontext.Add(Child);
mycontext.Add(Parent);

或者

mycontext.Add(Parent);


查看完整描述

1 回答

?
拉莫斯之舞

TA贡献1502条经验 获得超10个赞

如果两个实体都已经存在并且您想要将子实体与父实体相关联,并且父实体也被上下文跟踪,则更新 FK 属性就足够了。


Parent.ChildId=child.Id;

context.SaveChanges();

现在如果Child是一个新实体并且父实体已经存在并且已经被上下文跟踪,那么使用引用属性将两者关联起来:


Parent.childobj=child; // You can also do this if both exist already in your DB

context.SaveChanges();

如果两者都是新的,则将父项添加到上下文中,这也将保留相关的子项:


Parent.childobj=child;

context.Parent.Add(parent);

context.SaveChanges();


查看完整回答
反对 回复 2022-11-22
  • 1 回答
  • 0 关注
  • 8 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信