public static Expression?Clean(Expression?expr, Func <Expression, Expression> partialEval, bool shortCircuit) { ExpressionCleaner ee = new ExpressionCleaner(partialEval, shortCircuit); var result = ee.Visit(expr); return(partialEval(result)); }
public static Expression Clean(Expression expr, Func<Expression, Expression> partialEval, bool shortCircuit) { ExpressionCleaner ee = new ExpressionCleaner() { partialEval = partialEval, shortCircuit = shortCircuit }; var result = ee.Visit(expr); return partialEval(result); }
public IQueryable <S> CreateQuery <S>(Expression expression) { Expression res = ExpressionCleaner.Clean(expression); return(new ExpandableQueryProvider <S>(_item.Provider.CreateQuery <S>(res))); }
public object Execute(Expression expression) { return(_item.Provider.Execute(ExpressionCleaner.Clean(expression))); }