我做我的查询...
var result = from u in tdc.tblUsers
where u.UserID == userID
select u;
然后我更改我想要的值:
foreach (tblUsers u in result)
{
//change values (and no im not changing the primary key or foreign keys)
}
然后我提交更改
tdc.SubmitChanges();
当它点击提交更改时,它会抛出该行未找到或已更改的异常。我是唯一使用它的人,因此访问数据库或锁定没有其他冲突。为什么会抛出ChangeConflictException
? 我已经使用调试器逐步完成,并且数据在整个过程中一直存在,包括我正在尝试进行的更改。
我以前也尝试过这种方式并得到了同样的错误
tblUsers result = (from u in tdc.tblUsers
where u.UserID == userID
select u).Single();
result.Address = address;
result.Phone = phone;
tdc.SubmitChanges();
UserID
由于是主键,因此它只会使用此查询检索 1 条记录。
我已经做过很多次了,而且效果很好。我发现的每一个例子都正是我所拥有的。