http://geekswithblogs.net/michelotti/archive/2007/12/17/117791.aspx
我正在使用带有 C# 的 ASP.NET,并尝试使用 linq to sql 来更新数据上下文,如上面链接的博客中所示。我按照说明在表中创建了时间戳字段,并使用以下方法:
private void updateRecord(TableName updatedRecord)
{
context db = new context();
db.TableName.Attach(updatedRecord,true);
db.SubmitChanges();
}
我的问题是,在尝试在数据上下文中调用 Attach 方法之前,您是否应该将 timeStamp 字段分配给 updatedRecord 中的任何内容?
当我运行此代码时,我得到以下异常:System.Data.Linq.ChangeConflictException: Row not found or changed.
在将对象传递给此更新方法之前,我更新了所有字段,包括我正在更新的记录的主键。在调试期间,对象的 TimeStamp 属性显示为 null。我不确定它是否应该这样。
我拥有的每一本书和资源都说这是这样做的方法,但没有一个详细介绍这个 TimeStamp 属性。
我知道这既快速又简单,所以如果有人知道,请告诉我。