/// <summary> /// Visits a QueryExpression tree whose root node is the LinqAddQueryOptionExpression. /// </summary> /// <param name="expression">The root node of the expression tree being visited.</param> /// <returns>Replaced expression.</returns> public virtual QueryExpression Visit(LinqToAstoriaAddQueryOptionExpression expression) { QueryExpression source = this.ReplaceExpression(expression.Source); if (HasChanged(expression.Source, source)) { return(LinqToAstoriaLinqBuilder.AddQueryOption(source, expression.QueryOption, expression.QueryValue)); } else { return(expression); } }
/// <summary> /// Visits a QueryExpression tree whose root node is the LinqKeyExpression. /// </summary> /// <param name="expression">The root node of the expression tree being visited.</param> /// <returns>Replaced expression.</returns> public virtual QueryExpression Visit(LinqToAstoriaKeyExpression expression) { QueryExpression source = this.ReplaceExpression(expression.Source); if (HasChanged(expression.Source, source)) { return(LinqToAstoriaLinqBuilder.Key(source, expression.KeyProperties)); } else { return(expression); } }