我有一个ObjectDisplay由两个相关表组成的视图:  Object和State.  State表示 的状态,视图从每个Object的最新状态中提取一些细节。StateObject
在显示此信息的页面上,用户可以输入一些评论,从而创建一个新的State. 创建新的 后State,我立即拉出ObjectfromObjectDisplay并将其发送回以放入局部视图并替换Object页面上网格中的 。
// Add new State.
db.States.Add(new State()
{
    ObjectId = objectId,
    Comments = comments,
    UserName = username
});
// Save the changes (executes all of the above).
db.SaveChanges();
// Return the new Object information.
return db.Objects.Single(c => c.ObjectId == objectId);
根据我的数据库跟踪,Single调用发生在调用后大约 70 毫秒SaveChanges,并且它发生在同一个 SPID 上。
现在解决问题:  数据库默认值  我看到RecordDatein Stateto GETUTCDATE()- 我自己不提供日期。我看到的是Object返回的有State旧RecordDate的State和旧Comments的新State信息State。Object返回的有 oldState的信息。当我刷新页面时,所有正确的信息都在那里,但在数据库/EF 的初始调用中返回了错误的信息。
所以..有什么问题?视图更新速度不够快吗?EF会发生什么事情吗?我真的不知道从哪里开始寻找。