【发布时间】:2014-04-15 10:25:08
【问题描述】:
我只想更新表中的一列。我必须将活动列的值更改为 false。我正在使用实体框架。以下是我尝试过的代码:
public void DeleteUser(string userid, string siteid)
{
var user = new User(){UserId = userid, SiteId= siteid, Active = false};
//Changing Active to false, orignially true
db_context.Users.Attach(user);
db_context.Configuration.ValidateOnSaveEnabled = false;
db_context.Entry(user).Property(x => x.Active).IsModified = true;
db_context.SaveChanges();
db_context.Configuration.ValidateOnSaveEnabled = true;
}
我正在调试代码。它到达db_context.SaveChanges(),然后抛出以下错误:
Store update, insert, or delete statement affected an unexpected number of rows
(0). Entities may have been modified or deleted since entities were loaded.
Refresh ObjectStateManager entries.
这里有什么问题?
【问题讨论】:
-
您的示例中的“播放”是什么?您在哪里使用“用户”对象?
-
对不起。应该是用户不玩。我将编辑问题。
标签: c# .net database entity-framework