gpt4 book ai didi

entity-framework - 在 Entity Framework 上克隆数据

转载 作者:行者123 更新时间:2023-12-03 06:02:06 25 4
gpt4 key购买 nike

我正在创建软件,用户可以在其中基于旧产品创建新产品。

现在我需要使用 Entity Framework 进行复制/克隆操作。首先我开始这样写:

foreach(sourcedata1 in table1){   ... create new table   ... copy data   ... create Guid   ... add   foreach(sourcedata2 in table2)   {       ... create new table       ... copy data       ... create Guid       ... add              ... and so on   }}

问题是这不是一个好方法。有没有简单的方法克隆信息(除了需要为新行生成的 Guid )或者我应该手动复制所有内容?

其他解决方案

您还可以使用 EmitMapper 或 AutoMapper 来复制属性。

最佳答案

要在 Entity Framework 中克隆实体,您只需从 DataContext 中分离该实体,然后将其重新添加到 EntityCollection 中即可。

context.Detach(entity);
entityCollection.Add(entity);
<小时/>

EF6+ 更新(来自评论)

context.Entry(entity).State = EntityState.Detached;
entity.id = 0;
entity.property = value;
context.Entry(entity).State = EntityState.Added;
context.SaveChanges();

关于entity-framework - 在 Entity Framework 上克隆数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2185155/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com