private void SetAudit(T entity, DatabaseOperationEnum operation) { if (!typeof(T).IsSubclassOf(typeof(BroadcastersAudit))) { return; } var utcNowAuditDate = DateTime.UtcNow; switch (operation) { case DatabaseOperationEnum.Insert: entity.GetType().GetProperty("CreationDate").SetValue(entity, utcNowAuditDate, null); entity.GetType().GetProperty("LastModificationDate").SetValue(entity, utcNowAuditDate, null); break; case DatabaseOperationEnum.Update: entity.GetType().GetProperty("LastModificationDate").SetValue(entity, utcNowAuditDate, null); break; case DatabaseOperationEnum.Delete: entity.GetType().GetProperty("DeletionDate").SetValue(entity, utcNowAuditDate, null); entity.GetType().GetProperty("IsDeleted").SetValue(entity, true, null); break; default: break; } }
public List <T> SingleQuery <T>(T returnType, DatabaseOperationEnum operation) { throw new NotImplementedException(); }