无法解析Symbol ObjectStateManager

Riz*_*ski 12 c# resharper entity-framework-4 asp.net-mvc-3

尝试从实体框架4在我的数据库上下文中调用它时,我收到" 无法解析符号ObjectStateManager " 的错误.我找不到其他人遇到此问题.我尝试过使用System.DataSystem.Data.Objects.

是否需要使用特定的实体框架才能使用ObjectStateManager?或者我错过了某种安装包?我正在使用Database First Entity Framework.

这是我给出错误的代码:(第7行)

[HttpPost]
        public ActionResult EditProfile(User user)
        {
            if (ModelState.IsValid)
            {
                db.Users.Attach(user);
                db.ObjectStateManager.ChangeObjectState(user, EntityState.Modified);
                db.SaveChanges();
            }
            return RedirectToAction("Profile");
        }
Run Code Online (Sandbox Code Playgroud)

小智 28

我相信你现在找到了一个解决方案,但我刚刚遇到了同样的问题,并且能够通过将EntityState行更改为以下内容来解决它:

db.Entry(user).State = EntityState.Modified;
Run Code Online (Sandbox Code Playgroud)

  • 从EF5升级到EF6,这对我有用. (2认同)

Vit*_*nin 13

可能你首先使用代码EF.在这种情况下,您必须将您的代码还原为IObjectContextAdapter的显式实现,即

((IObjectContextAdapter)db).ObjectContext.ObjectStateManager
Run Code Online (Sandbox Code Playgroud)