Entity FrameWork 有一个表的 某个字段 的数据是通过 服务实时更新的,但是在 用户查看记录时 可能是 旧的,保存就会将 服务更新的数据給覆盖。 Entity FrameWork 如何排除更新 指定字段
1:重写 SaveChanges 排除 指定字段 无效(只能排除用户 输入的更改)
public override int SaveChanges(){
//没有变动跳过
if (!Entitys.Any(_e => _e.State != EntityState.Unchanged))
return 0;
//获取所有更新
var _entitiesChanged = ChangeTracker.Entries().Where(_e => _e.State == EntityState.Modified).ToList();
foreach (var entityitem in _entitiesChanged)
{
var _entity = entityitem.Entity;
var _entityProptys = _entity.GetType().GetProperties();
this.Entry(_entity).Property(“VIPNO”).IsModified = false;
}
}
此 方法无效,求助大侠 指点