C# Class Remotion.Linq.SqlBackend.SqlGeneration.SqlGeneratingSelectExpressionVisitor

Extends SqlGeneratingExpressionVisitor by emitting "AS" aliases for NamedExpression and SqlEntityExpression instances. This should be used for the SqlStatement.SelectProjection of substatements. For the outermost statement, SqlGeneratingOuterSelectExpressionVisitor should be used.
Inheritance: SqlGeneratingExpressionVisitor, ISqlGroupingSelectExpressionVisitor
显示文件 Open project: re-motion/Relinq-SqlBackend Class Usage Examples

Public Methods

Method Description
GenerateSql ( Expression expression, ISqlCommandBuilder commandBuilder, ISqlGenerationStage stage ) : void
VisitNamedExpression ( NamedExpression expression ) : Expression
VisitSqlGroupingSelectExpression ( SqlGroupingSelectExpression expression ) : Expression

Protected Methods

Method Description
AppendColumnForEntity ( SqlEntityExpression entity, SqlColumnExpression column ) : void
EnsureNoCollectionExpression ( Expression expression ) : void
GetAliasForColumnOfEntity ( SqlColumnExpression column, SqlEntityExpression entity ) : string
SqlGeneratingSelectExpressionVisitor ( ISqlCommandBuilder commandBuilder, ISqlGenerationStage stage ) : System

Method Details

AppendColumnForEntity() protected method

protected AppendColumnForEntity ( SqlEntityExpression entity, SqlColumnExpression column ) : void
entity Remotion.Linq.SqlBackend.SqlStatementModel.Resolved.SqlEntityExpression
column Remotion.Linq.SqlBackend.SqlStatementModel.Resolved.SqlColumnExpression
return void

EnsureNoCollectionExpression() protected static method

protected static EnsureNoCollectionExpression ( Expression expression ) : void
expression System.Linq.Expressions.Expression
return void

GenerateSql() public static method

public static GenerateSql ( Expression expression, ISqlCommandBuilder commandBuilder, ISqlGenerationStage stage ) : void
expression System.Linq.Expressions.Expression
commandBuilder ISqlCommandBuilder
stage ISqlGenerationStage
return void

GetAliasForColumnOfEntity() protected method

protected GetAliasForColumnOfEntity ( SqlColumnExpression column, SqlEntityExpression entity ) : string
column Remotion.Linq.SqlBackend.SqlStatementModel.Resolved.SqlColumnExpression
entity Remotion.Linq.SqlBackend.SqlStatementModel.Resolved.SqlEntityExpression
return string

SqlGeneratingSelectExpressionVisitor() protected method

protected SqlGeneratingSelectExpressionVisitor ( ISqlCommandBuilder commandBuilder, ISqlGenerationStage stage ) : System
commandBuilder ISqlCommandBuilder
stage ISqlGenerationStage
return System

VisitNamedExpression() public method

public VisitNamedExpression ( NamedExpression expression ) : Expression
expression Remotion.Linq.SqlBackend.SqlStatementModel.NamedExpression
return System.Linq.Expressions.Expression

VisitSqlGroupingSelectExpression() public method

public VisitSqlGroupingSelectExpression ( SqlGroupingSelectExpression expression ) : Expression
expression Remotion.Linq.SqlBackend.SqlStatementModel.SqlGroupingSelectExpression
return System.Linq.Expressions.Expression