我的目标是复制一个现有的实体,稍微修改它,并插入修改后的版本.
我已经尝试了两种不同的方法:
- var thing = context.Things.Where(x => x.SomeID == someid).AsNoTracking().Single();
- thing.AnotherID = 1234;
- context.Things.AddObject(thing);
- context.SaveChanges();
- var thing = context.Things.Where(x => x.SomeID == someid).Single();
- context.Detach(thing);
- thing.AnotherID = 1234;
- context.Things.AddObject(thing);
- context.SaveChanges();
从我能告诉他们,他们都完成了我的目标.其中一个比其他更好,还是他们同样好(或错!)