[英]EF 4.0 Self-Tracking Entities, intended updates are being translated into inserts
[英]Clone Self-Tracking Entities in EF 4.0?
如何在EF 4.0中克隆自跟踪实体图?
谢谢
自我跟踪实体是可序列化的,因此获取实体的深层克隆(深层克隆=图形的克隆)的最简单方法是使用DataContractSerializer
进行序列化并立即反序列化。 反序列化的实体将是您的图形克隆。
当您说“克隆”时,您是要创建一个将保留的新实体,还是仅创建另一个“瞬态”实体,该实体是同一实体的内存中副本?
如果要进行内存复制,则始终可以创建实体类的新实例,然后在字段上进行复制。 由于您尚未告知相关内容,因此不会跟踪对其所做的更改。
var newInstance = new SomeEntity() { SomeProperty = oldInstance.SomeProperty };
如果您要创建一个将保留的新实体,则只需执行将要插入新记录的常规操作即可。 例如:
context.SomeEntities.Add(newInstance);
您不能在逻辑上创建跟踪更改的完整副本,而是引用相同的实例。 您将采用哪个版本的对象?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.