49
我已阅读大量关于在实体框架中保存分离实体的文章。它们都似乎适用于旧版本的实体框架。它们引用了似乎不存在的方法,如ApplyCurrentValues和ChangeObjectState。心血来潮,我决定尝试通过我找到智能感知的方法,我要确保这是做正确的方式,因为我没有机会看到幕后发生了什么:在实体框架中保存分离的实体6
public void SaveOrder(Order order)
{
using (VirtualWebEntities db = new VirtualWebEntities())
{
db.Orders.Attach(order);
db.Entry(order).State = System.Data.Entity.EntityState.Modified;
db.SaveChanges();
}
}
是这是更新已更改的现有项目的正确方法吗?
感谢。所以我只是想澄清..不再像以前的版本中的applycurrentvalues的概念,你可以通知EF哪些字段改变? – KingOfHypocrites
@KingOfHypocrites你可以,我编辑了我的答案。我建议通过[EF6文档](http://msdn.microsoft.com/en-us/data/ee712907)查看,它有很多很好的示例和解释,并且以非常直接的方式编写。 –
感谢您的链接。你的例子唯一的事情就是我必须手动标记每个属性。旧版本有一个应用值方法,您可以将新对象应用于旧对象。这会自动标记所有更改的属性,以便在保存时知道要更新的内容。我仍然在寻找相同的东西。 – KingOfHypocrites