public async Task <bool> DeleteById <TEntity>(Expression <Func <TEntity, bool> > predicate, bool AutoSave = SAVE) where TEntity : class
        {
            var items = repository.Find(predicate);

            if (items == null)
            {
                return(false);
            }

            var result = repository.Delete <TEntity>(items);

            if (AutoSave)
            {
                await SaveChangesAsync().ConfigureAwait(false);
            }
            return(result);
        }