在mvc中使用应用当前值来获取异常以更新记录

时间:2012-01-17 09:07:42

标签: sql model-view-controller ado.net

我正在创建一个Web服务方法,并在这种情况下使用应用当前值来更新记录。我得到例外:

  

错误: - 在ObjectStateManager中找不到具有与提供的对象的键匹配的键的对象。验证提供的对象的键值是否与必须应用更改的对象的键值匹配。

以下是上述代码:

        TestEntities db = new TestEntities();
        User user = new User();
        int userId = _userRepository.Find(x => x.UserId == userid).FirstOrDefault().Id;
        User existingUser = _userRepository.Find(x => x.Id == userId).SingleOrDefault();
        user = _userRepository.Find(x => x.Id == userId).SingleOrDefault();
        db.ApplyCurrentValues(existingUser.EntityKey.EntitySetName, user);
        db.SaveChanges();

只要断点符合ApplyCurrentValues方法,就会出现异常。

1 个答案:

答案 0 :(得分:1)

请参阅此链接:http://treenovum-wss.com/alavpa/Lists/Posts/Post.aspx?ID=106

不知道为什么这样做有效,但它对我有用,我的问题也解决了。