private static Expression <Func <T, bool> > CombineExpressionHandler <T>(List <ExpressionModel> list)
        {
            var p = new ExpressionProcessor <T>();
            Expression <Func <T, bool> > exp = null;

            for (int i = 0; i < list.Count; i++)
            {
                if (i == 0)
                {
                    exp = (Expression <Func <T, bool> >)list[i].LambdaExpression;
                }
                else
                {
                    exp = p.CombineExpression(exp, (Expression <Func <T, bool> >)list[i].LambdaExpression, list[i].ExpressionType);
                }
            }
            return(exp);
        }