问题描述
我正在寻求有关EF Core在子(和子孙)导航属性方面行为的明确说明。 如果我通过跟踪加载了一个对象Parent,该对象有一个Child对象的列表,每个对象都有一个Grandchild对象...
谢谢!
解决方法
导航属性提供了一种导航两个实体类型之间的关联的方法。每个对象都可以为其所参与的每个关系具有导航属性。我们可以使用它来配置两个实体之间的关系。
如果对孙子孙女进行了更改,这些记录是否会 通过update(Parent)自动更新?
是的,在获取父实体时,您还可以获取相关实体(子实体)数据,如果通过update(父实体)更新子实体数据,它将自动更新子实体数据表中的子实体数据。
如果从列表中添加/删除了孩子,这些记录将 通过update(Parent)自动创建/删除吗?
获取父实体时,如果将中的项目添加到列表中,由于子表不包含新项,它将自动在子表中插入新记录。对于删除方案,请检查Cascade Delete。
当我最初创建父母时,孩子和 孙子是通过create(Parent)自动创建的?
是的。您可以查看以下文章:Saving Related Data