首页 > 解决方案 > 如何遍历每个 Entity Framework Core 对象的相关实体?

问题描述

我正在尝试复制父对象并将其添加到我的数据库中。为此,我正在使用新的主键更新父对象,但也想更新这个主键,它反映为其相关对象中的外键,以及每个相关对象的主键。

我能够更新父对象的主键,但是有没有办法有效地遍历每个相关对象来更改相应的字段,以便我可以成功地将这些数据保存到我的数据库中?

我已经包含了可以将原始父对象更新为新对象的代码。

originalObject.Entry(originalProject).State = EntityState.Detached;
if (originalObject.GetType().GetProperty("Id") != null)
{
    var key = Guid.NewGuid().ToString();
    // OriginalId represents the foreign key that maps to the originalObject
    originalProject.GetType().GetProperty("OriginalId").SetValue(originalProject, key);
}
db.AddAsync(originalObject);
db.SaveChanges();

标签: c#entity-frameworkentity-framework-corelinq-to-entities

解决方案


推荐阅读