




















Entity Framework初始化時執行:
Configuration.AutoDetectChangesEnabled = false;
會將數據庫變為NotTrack模式,也就是不會自動同步对象与其属性的状态。
這時候如果將數據表中的某行數據修改,並執行SaveChanges(),會發現數據庫中的數據並沒有保存修改後值。
解決方法有以下幾種:
System.Data.Entity.Infrastructure.DbEntityEntry entryObj = dbContext.Entry<TableName>(tableObj);
entryObj.State = System.Data.Entity.EntityState.Modified;
System.Data.Entity.Infrastructure.DbEntityEntry entryObj = dbContext.Entry<TableName>(tableObj);
entryObj.Property(t => t.FieldName).CurrentValue = NewValue;
dbContext.AttachAndModify(tableObj)
.Set(x => x.FieldName, NewValue);
dbcontext.tableName .Where(p => ....) .Update(p => new TableName() { FieldName = NewValue });
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。