[英]Update record using MySQL, Entity Framework + Ext.NET
我有一小段我无法完全正常工作的代码:
StoreDataHandler dataHandler = new StoreDataHandler(HttpContext.Request["data"]);
ChangeRecords<ChequeDiary> data = dataHandler.ObjectData<ChequeDiary>();
foreach (ChequeDiary item in data.Updated) {
db.ChequeDiaries.Attach(item);
db.Refresh(System.Data.Objects.RefreshMode.ClientWins, item);
}
这是为了获取更改并更新基础对象,但是当我打电话时
db.SaveChanges();
..什么都没有更新。 如果我使用:
foreach (ChequeDiary item in data.Updated) {
ChequeDiary obj = db.ChequeDiaries.FirstOrDefault(o => o.Id == item.Id);
obj.BankedAmount = item.BankedAmount;
}
并显式设置每个属性,即可正常工作。 为什么?!
您的第一个示例可能未将任何属性标记为已修改。 检查ObjectStateManager
确认这一点。 通常,附加对象后必须修改属性。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.