, , Modified. , ToObject() OriginalValues. , originalEntity - , .
, originalEntity , , ?
:
case System.Data.EntityState.Modified:
var originalEntity = trackedEntity.OriginalValues.ToObject() as ITrackable;
originalEntity.ModifiedDate = now;
originalEntity.ModifiedBy = currentUser;
originalEntity.Status = Status.Modified;
Entry(originalEntity).Status = System.Data.EntityState.Added;
trackedEntity.Entity.Status = Status.Active;
break;
trackedEntity , Modified originalEntity , .
, ITrackable , ToObject() , OriginalValues, ITrackable, ChangeTracker.Entries .
, , .
Edit
, originalEntity , trackedEntity - DbEntityEntry<T>. , originalEntityObject (), trackedEntityEntry.
: ( - ), ChangeTracker.DetectChanges(), foreach, , , , case ( Unchanged, ). POCO OriginalValues, base.SaveChanges, . (. " 2" : fooobar.com/questions/94552/....)