Example #1
0
        public override bool OnFlushDirty(object entity, object id, object[] currentState, object[] previousState, string[] propertyNames,
                                          IType[] types)
        {
            IAuditable auditableEntity = entity as IAuditable;

            if (auditableEntity != null)
            {
                auditableEntity.SetUpdatedDate(DateTime.UtcNow);
                return(true);
            }
            return(false);
        }
Example #2
0
        public override bool OnSave(object entity, object id, object[] state, string[] propertyNames, IType[] types)
        {
            IAuditable auditableEntity = entity as IAuditable;

            if (auditableEntity != null)
            {
                DateTime currentDate = DateTime.UtcNow;
                for (int i = 0; i < propertyNames.Length; i++)
                {
                    if (propertyNames[i] == "Created" || propertyNames[i] == "Updated")
                    {
                        state[i] = currentDate;
                    }
                }
                auditableEntity.SetCreatedDate(currentDate);
                auditableEntity.SetUpdatedDate(currentDate);

                return(true);
            }
            return(false);
        }