internal static Expression Replace(LambdaExpression query, ObjectContext objectContext, object[] parameterValues) { var parameterLookup = query .Parameters .Skip(1) .Zip(parameterValues) .ToDictionary(pair => pair.Key, pair => pair.Value); parameterLookup.Add(query.Parameters.First(), objectContext); var replacer = new CreateDonateableExpressionVisitor(parameterLookup); return(replacer.Visit(query.Body)); }
internal static Expression Replace(LambdaExpression query, ObjectContext objectContext, object[] parameterValues) { var parameterLookup = query .Parameters .Skip(1) .Zip(parameterValues) .ToDictionary(pair => pair.Key, pair => pair.Value); parameterLookup.Add(query.Parameters.First(), objectContext); var replacer = new CreateDonateableExpressionVisitor(parameterLookup); return replacer.Visit(query.Body); }