无法让应用当前值(实体)在实体框架 5 中工作



同志们,谁能在这里帮助我,实体框架 5 似乎没有 ApplyCurrentValues() 方法。有没有另一种方法可以在实体框架 v5 中更新数据库对象。这是我试图做的

odc.Accounts.Attach(new Account { AccountID = account.AccountID });
  odc.Accounts.ApplyCurrentValues(account);
  odc.SaveChanges();

但是我一直在应用当前值()行中收到编译错误

ApplyCurrentValues是一个ObjectContext的API方法,所以首先你必须访问包装在DbContext中的对象上下文:

odc.Accounts.Attach(new Account { AccountID = account.AccountID });
((IObjectContextAdapter)odc).ObjectContext
    .ApplyCurrentValues("Accounts", account);
odc.SaveChanges();

请注意,包装的上下文没有像"Accounts"这样的成员,因此您必须使用 ObjectContext 方法本身。

但是你可以使用 DbContext API 做同样的事情:

var sourceAcc = new Account { AccountID = account.AccountID });
odc.Entry(account).CurrentValues.SetValues(sourceAcc);

相关内容

  • 没有找到相关文章

最新更新