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); }