我有一个将模型“地址”作为参数的方法。
现在在这个方法中,我想用提供的地址“覆盖”我在数据库中的现有地址 - 就像在SQL中更新它一样。
我这样插入位:
Context.Addresses.AddObject(adr);
Context.SaveChanges();
如何进行更新?
我尝试过这样的事情:
public void Update(Address adr)
{
Context.Addresses.Attach(adr);
Context.SaveChanges();
}
可悲的是,这不起作用......我也尝试了很多其他代码,但没有一个有效。
那么当我将修改记录的对象作为参数获取时,如何更新数据库中的现有记录?
谢谢
答案 0 :(得分:2)
您需要通过调用ApplyCurrentValues
告诉EF该实体已更新 public void Update(Address adr)
{
Context.Addresses.ApplyCurrentValues(adr);
Context.SaveChanges();
}