public static Expression Eval(Expression fullExpression, Expression subQueryExpression, IEnumerable newSource) { var toReplace = ((MethodCallExpression)subQueryExpression).Arguments[0]; var visitor = new ReplaceSourceVisitor(newSource, toReplace); return(visitor.Visit(fullExpression)); }
public void RewriteSource(IEnumerable newSource) { var temp = ReplaceSourceVisitor.Eval(_fullExpression, _subQueryExpression, newSource); Expression = temp; }