public virtual MessageObject <T> Disable(T entity)
        {
            MessageObject <T> validationResult = ValidateDisable(entity);

            try
            {
                BasePreProcessing(ref entity, OperationType.Disable);
                if (validationResult.ProcessingStatus)
                {
                    repo.Disable(entity);
                    repo.Commit();

                    BasePostProcessing(ref entity, OperationType.Add);
                }
            }
            catch (Exception ex)
            {
                Utils.Logger.Log(ex, logSource);
                validationResult.AddException(ex);
            }
            return(validationResult);
        }