由于需要在更新一条记录之前,取得原记录并修改日期添加回数据库(相当于备份)
取得原来的记录
objPrice = _DbHouse.Price
.Where(p => p.AutoId == 1)
.FirstOrDefault();
修改一下日期
objPrice .PostDate = DateTime.Now;
添加(相当于备份) 但是这里出现问题了
ObjectStateManager 中已存在具有同一键的对象。现有对象处于 Modified 状态。只有在该对象处于 added 状态后,才能再次将它添加到 ObjectStateManager 中。
请问怎么解决?是否要创建多一个实体,除<实体键>外的值都赋值到新的实体,然后添加?但是我的实体类有很多属性… 是否还有其他办法?
_DbHouse.AddToPrice(objPrice);
继续修改 objPrice 其他属性值, 保存更新.
_DbHouse.SaveChanges();
不用AddTo直接修改后保存即可
要改的话得把你设置的主键给修改掉才行啊,相应EntityKey也要改了,这样才不会造成冲突
备份的数据还是原来的表?你重新建个表结构好了