C# Class IQ.Data.ClientJoinedProjectionRewriter

rewrites nested projections into client-side joins
Inheritance: DbExpressionVisitor
Show file Open project: maravillas/linq-to-delicious

Public Methods

Method Description
Rewrite ( QueryLanguage language, Expression expression ) : Expression

Protected Methods

Method Description
VisitProjection ( ProjectionExpression proj ) : Expression
VisitSubquery ( SubqueryExpression subquery ) : Expression

Private Methods

Method Description
CanJoinOnClient ( SelectExpression select ) : bool
ClientJoinedProjectionRewriter ( QueryLanguage language ) : System
GetEquiJoinKeyExpressions ( Expression predicate, TableAlias outerAlias, List outerExpressions, List innerExpressions ) : bool

Method Details

Rewrite() public static method

public static Rewrite ( QueryLanguage language, Expression expression ) : Expression
language QueryLanguage
expression System.Linq.Expressions.Expression
return System.Linq.Expressions.Expression

VisitProjection() protected method

protected VisitProjection ( ProjectionExpression proj ) : Expression
proj ProjectionExpression
return System.Linq.Expressions.Expression

VisitSubquery() protected method

protected VisitSubquery ( SubqueryExpression subquery ) : Expression
subquery SubqueryExpression
return System.Linq.Expressions.Expression