Example #1
0
 public void SyncObjectsStatePostCommit()
 {
     foreach (var dbEntityEntry in ChangeTracker.Entries())
     {
         ((IObjectState)dbEntityEntry.Entity).ObjectState = StateHelper.ConvertState(dbEntityEntry.State);
     }
 }
 public void SyncObjectsStatePreCommit()
 {
     foreach (var dbEntityEntry in Context.ChangeTracker.Entries())
     {
         dbEntityEntry.State = StateHelper.ConvertState(dbEntityEntry.State);
     }
 }
 private void SyncObjectsStatePreCommit()
 {
     foreach (var dbEntityEntry in ChangeTracker.Entries())
     {
         dbEntityEntry.State = StateHelper.ConvertState(((IObjectState)dbEntityEntry.Entity).ObjectState);
     }
 }
 public static void ApplyStateChanges(this DbContext context)
 {
     foreach (var entry in context.ChangeTracker.Entries <IObjectWithState>())
     {
         IObjectWithState stateInfo = entry.Entity;
         entry.State = StateHelper.ConvertState(stateInfo.State);
     }
 }
Example #5
0
        public void ApplyStateChanges()
        {
            foreach (DbEntityEntry dbEntityEntry in ChangeTracker.Entries())
            {
                var entityState = dbEntityEntry.Entity as IObjectState;
                if (entityState == null)
                {
                    throw new InvalidCastException("All entites must implement the IObjectState interface, " +
                                                   "this interface must be implemented so each entites state can explicitely determined when updating graphs.");
                }

                dbEntityEntry.State = StateHelper.ConvertState(entityState.State);
            }
        }
Example #6
0
 protected override void SyncObjectsStatePreCommit()
 {
     foreach (var dbEntityEntry in ChangeTracker.Entries())
     {
         dbEntityEntry.State = StateHelper.ConvertState(((IObjectState)dbEntityEntry.Entity).ObjectState);
         if (((IObjectState)dbEntityEntry.Entity).ObjectState.Equals(ObjectState.Added))
         {
             ((IAuditableEntity)dbEntityEntry.Entity).CreatedBy   = AuditInfo.UserName;
             ((IAuditableEntity)dbEntityEntry.Entity).CreatedTime = DateTime.Now;
         }
         if (!((IObjectState)dbEntityEntry.Entity).ObjectState.Equals(ObjectState.Unchanged))
         {
             ((IAuditableEntity)dbEntityEntry.Entity).VersionNo    += 1;
             ((IAuditableEntity)dbEntityEntry.Entity).TransactionId = AuditInfo.TransactionId;
             ((IAuditableEntity)dbEntityEntry.Entity).UpdatedBy     = AuditInfo.UserName;
             ((IAuditableEntity)dbEntityEntry.Entity).UpdatedTime   = DateTime.Now;
         }
     }
 }
Example #7
0
        private void SyncObjectsStatePreCommit()
        {
            DateTimeOffset currentDate             = DateTimeOffset.UtcNow;
            string         currentRegistrationUser = _currentIdentity.FullUserName;
            string         currentChangedUser      = _currentIdentity.FullUserName;
            IEntity        entityBase = null;

            foreach (DbEntityEntry dbEntityEntry in ChangeTracker.Entries())
            {
                entityBase          = (IEntity)dbEntityEntry.Entity;
                dbEntityEntry.State = StateHelper.ConvertState(entityBase.ObjectState);
                if (_type_IUnauditableEntity.IsAssignableFrom(entityBase.GetType()) &&
                    !string.IsNullOrEmpty(entityBase.RegistrationUser))
                {
                    currentRegistrationUser = entityBase.RegistrationUser;
                }
                if (_type_IUnauditableEntity.IsAssignableFrom(entityBase.GetType()) &&
                    entityBase.RegistrationDate != DateTimeOffset.MinValue)
                {
                    currentDate = entityBase.RegistrationDate;
                }
                if (_type_IUnauditableEntity.IsAssignableFrom(entityBase.GetType()) &&
                    !string.IsNullOrEmpty(entityBase.LastChangedUser))
                {
                    currentChangedUser = entityBase.LastChangedUser;
                }

                if (entityBase.ObjectState == ObjectState.Added)
                {
                    entityBase.RegistrationDate = currentDate;
                    entityBase.RegistrationUser = currentRegistrationUser;
                }

                if (entityBase.ObjectState == ObjectState.Modified)
                {
                    entityBase.LastChangedDate = currentDate;
                    entityBase.LastChangedUser = currentChangedUser;
                }
            }
        }
Example #8
0
        public void ConvertStateTest()
        {
            var added     = StateHelper.ConvertState(ObjectState.Added);
            var modified  = StateHelper.ConvertState(ObjectState.Modified);
            var deleted   = StateHelper.ConvertState(ObjectState.Deleted);
            var unchanged = StateHelper.ConvertState(ObjectState.Unchanged);
            var detached  = StateHelper.ConvertState(EntityState.Detached);
            var unchange  = StateHelper.ConvertState(EntityState.Unchanged);
            var Add       = StateHelper.ConvertState(EntityState.Added);
            var delete    = StateHelper.ConvertState(EntityState.Deleted);
            var modify    = StateHelper.ConvertState(EntityState.Modified);

            Assert.IsNotNull(added);
            Assert.IsNotNull(modified);
            Assert.IsNotNull(deleted);
            Assert.IsNotNull(unchanged);
            Assert.IsNotNull(detached);
            Assert.IsNotNull(unchange);
            Assert.IsNotNull(Add);
            Assert.IsNotNull(delete);
            Assert.IsNotNull(modify);
        }
Example #9
0
 public void SyncObjectState <TEntity>(TEntity entity) where TEntity : class, IObjectState
 {
     Entry(entity).State = StateHelper.ConvertState(entity.ObjectState);
 }
 public void SyncEntityState <TEntity>(TEntity entity) where TEntity : class, IObjectState
 {
     entity.SyncObjectState(StateHelper.ConvertState(Entry(entity).State));
 }
 public void SyncObjectState <TEntity>(TEntity entity) where TEntity : class
 {
     Context.Entry(entity).State = StateHelper.ConvertState(Context.Entry(entity).State);
 }
Example #12
0
 public void SyncObjectState(object entity)
 {
     Entry(entity).State = StateHelper.ConvertState(((IObjectState)entity).ObjectState);
 }
Example #13
0
 private void SyncObjectState <TEntity>(TEntity entity) where TEntity : class, IObjectTrackingState
 {
     Entry(entity).State = StateHelper.ConvertState(entity.ObjectState);
 }
Example #14
0
 public void SyncObjectState <TModel>(TModel entity) where TModel : class, IObjectState
 {
     Entry(entity).State = StateHelper.ConvertState(entity.ObjectState);
 }