Class SqlExpressionVisitor
- Namespace
- Microsoft.EntityFrameworkCore.Query
- Assembly
- Microsoft.EntityFrameworkCore.Relational.dll
A class that visits a SQL expression tree.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
public abstract class SqlExpressionVisitor : ExpressionVisitor
- Inheritance
-
SqlExpressionVisitor
- Derived
- Inherited Members
Constructors
SqlExpressionVisitor()
protected SqlExpressionVisitor()
Methods
VisitCase(CaseExpression)
Visits the children of the case expression.
protected abstract Expression VisitCase(CaseExpression caseExpression)
Parameters
caseExpression
CaseExpressionThe expression to visit.
Returns
- Expression
The modified expression, if it or any subexpression was modified; otherwise, returns the original expression.
VisitCollate(CollateExpression)
Visits the children of the collate expression.
protected abstract Expression VisitCollate(CollateExpression collateExpression)
Parameters
collateExpression
CollateExpressionThe expression to visit.
Returns
- Expression
The modified expression, if it or any subexpression was modified; otherwise, returns the original expression.
VisitColumn(ColumnExpression)
Visits the children of the column expression.
protected abstract Expression VisitColumn(ColumnExpression columnExpression)
Parameters
columnExpression
ColumnExpressionThe expression to visit.
Returns
- Expression
The modified expression, if it or any subexpression was modified; otherwise, returns the original expression.
VisitCrossApply(CrossApplyExpression)
Visits the children of the cross apply expression.
protected abstract Expression VisitCrossApply(CrossApplyExpression crossApplyExpression)
Parameters
crossApplyExpression
CrossApplyExpressionThe expression to visit.
Returns
- Expression
The modified expression, if it or any subexpression was modified; otherwise, returns the original expression.
VisitCrossJoin(CrossJoinExpression)
Visits the children of the cross join expression.
protected abstract Expression VisitCrossJoin(CrossJoinExpression crossJoinExpression)
Parameters
crossJoinExpression
CrossJoinExpressionThe expression to visit.
Returns
- Expression
The modified expression, if it or any subexpression was modified; otherwise, returns the original expression.
VisitDistinct(DistinctExpression)
Visits the children of the distinct expression.
protected abstract Expression VisitDistinct(DistinctExpression distinctExpression)
Parameters
distinctExpression
DistinctExpressionThe expression to visit.
Returns
- Expression
The modified expression, if it or any subexpression was modified; otherwise, returns the original expression.
VisitExcept(ExceptExpression)
Visits the children of the except expression.
protected abstract Expression VisitExcept(ExceptExpression exceptExpression)
Parameters
exceptExpression
ExceptExpressionThe expression to visit.
Returns
- Expression
The modified expression, if it or any subexpression was modified; otherwise, returns the original expression.
VisitExists(ExistsExpression)
Visits the children of the exists expression.
protected abstract Expression VisitExists(ExistsExpression existsExpression)
Parameters
existsExpression
ExistsExpressionThe expression to visit.
Returns
- Expression
The modified expression, if it or any subexpression was modified; otherwise, returns the original expression.
VisitExtension(Expression)
protected override Expression VisitExtension(Expression extensionExpression)
Parameters
extensionExpression
Expression
Returns
VisitFromSql(FromSqlExpression)
Visits the children of the from sql expression.
protected abstract Expression VisitFromSql(FromSqlExpression fromSqlExpression)
Parameters
fromSqlExpression
FromSqlExpressionThe expression to visit.
Returns
- Expression
The modified expression, if it or any subexpression was modified; otherwise, returns the original expression.
VisitIn(InExpression)
Visits the children of the in expression.
protected abstract Expression VisitIn(InExpression inExpression)
Parameters
inExpression
InExpressionThe expression to visit.
Returns
- Expression
The modified expression, if it or any subexpression was modified; otherwise, returns the original expression.
VisitInnerJoin(InnerJoinExpression)
Visits the children of the inner join expression.
protected abstract Expression VisitInnerJoin(InnerJoinExpression innerJoinExpression)
Parameters
innerJoinExpression
InnerJoinExpressionThe expression to visit.
Returns
- Expression
The modified expression, if it or any subexpression was modified; otherwise, returns the original expression.
VisitIntersect(IntersectExpression)
Visits the children of the intersect expression.
protected abstract Expression VisitIntersect(IntersectExpression intersectExpression)
Parameters
intersectExpression
IntersectExpressionThe expression to visit.
Returns
- Expression
The modified expression, if it or any subexpression was modified; otherwise, returns the original expression.
VisitLeftJoin(LeftJoinExpression)
Visits the children of the left join expression.
protected abstract Expression VisitLeftJoin(LeftJoinExpression leftJoinExpression)
Parameters
leftJoinExpression
LeftJoinExpressionThe expression to visit.
Returns
- Expression
The modified expression, if it or any subexpression was modified; otherwise, returns the original expression.
VisitLike(LikeExpression)
Visits the children of the like expression.
protected abstract Expression VisitLike(LikeExpression likeExpression)
Parameters
likeExpression
LikeExpressionThe expression to visit.
Returns
- Expression
The modified expression, if it or any subexpression was modified; otherwise, returns the original expression.
VisitOrdering(OrderingExpression)
Visits the children of the ordering expression.
protected abstract Expression VisitOrdering(OrderingExpression orderingExpression)
Parameters
orderingExpression
OrderingExpressionThe expression to visit.
Returns
- Expression
The modified expression, if it or any subexpression was modified; otherwise, returns the original expression.
VisitOuterApply(OuterApplyExpression)
Visits the children of the outer apply expression.
protected abstract Expression VisitOuterApply(OuterApplyExpression outerApplyExpression)
Parameters
outerApplyExpression
OuterApplyExpressionThe expression to visit.
Returns
- Expression
The modified expression, if it or any subexpression was modified; otherwise, returns the original expression.
VisitProjection(ProjectionExpression)
Visits the children of the projection expression.
protected abstract Expression VisitProjection(ProjectionExpression projectionExpression)
Parameters
projectionExpression
ProjectionExpressionThe expression to visit.
Returns
- Expression
The modified expression, if it or any subexpression was modified; otherwise, returns the original expression.
VisitRowNumber(RowNumberExpression)
Visits the children of the row number expression.
protected abstract Expression VisitRowNumber(RowNumberExpression rowNumberExpression)
Parameters
rowNumberExpression
RowNumberExpressionThe expression to visit.
Returns
- Expression
The modified expression, if it or any subexpression was modified; otherwise, returns the original expression.
VisitScalarSubquery(ScalarSubqueryExpression)
Visits the children of the scalar subquery expression.
protected abstract Expression VisitScalarSubquery(ScalarSubqueryExpression scalarSubqueryExpression)
Parameters
scalarSubqueryExpression
ScalarSubqueryExpressionThe expression to visit.
Returns
- Expression
The modified expression, if it or any subexpression was modified; otherwise, returns the original expression.
VisitSelect(SelectExpression)
Visits the children of the select expression.
protected abstract Expression VisitSelect(SelectExpression selectExpression)
Parameters
selectExpression
SelectExpressionThe expression to visit.
Returns
- Expression
The modified expression, if it or any subexpression was modified; otherwise, returns the original expression.
VisitSqlBinary(SqlBinaryExpression)
Visits the children of the sql binary expression.
protected abstract Expression VisitSqlBinary(SqlBinaryExpression sqlBinaryExpression)
Parameters
sqlBinaryExpression
SqlBinaryExpressionThe expression to visit.
Returns
- Expression
The modified expression, if it or any subexpression was modified; otherwise, returns the original expression.
VisitSqlConstant(SqlConstantExpression)
Visits the children of the sql constant expression.
protected abstract Expression VisitSqlConstant(SqlConstantExpression sqlConstantExpression)
Parameters
sqlConstantExpression
SqlConstantExpressionThe expression to visit.
Returns
- Expression
The modified expression, if it or any subexpression was modified; otherwise, returns the original expression.
VisitSqlFragment(SqlFragmentExpression)
Visits the children of the sql fragent expression.
protected abstract Expression VisitSqlFragment(SqlFragmentExpression sqlFragmentExpression)
Parameters
sqlFragmentExpression
SqlFragmentExpressionThe expression to visit.
Returns
- Expression
The modified expression, if it or any subexpression was modified; otherwise, returns the original expression.
VisitSqlFunction(SqlFunctionExpression)
Visits the children of the sql function expression.
protected abstract Expression VisitSqlFunction(SqlFunctionExpression sqlFunctionExpression)
Parameters
sqlFunctionExpression
SqlFunctionExpressionThe expression to visit.
Returns
- Expression
The modified expression, if it or any subexpression was modified; otherwise, returns the original expression.
VisitSqlParameter(SqlParameterExpression)
Visits the children of the sql parameter expression.
protected abstract Expression VisitSqlParameter(SqlParameterExpression sqlParameterExpression)
Parameters
sqlParameterExpression
SqlParameterExpressionThe expression to visit.
Returns
- Expression
The modified expression, if it or any subexpression was modified; otherwise, returns the original expression.
VisitSqlUnary(SqlUnaryExpression)
Visits the children of the sql unary expression.
protected abstract Expression VisitSqlUnary(SqlUnaryExpression sqlUnaryExpression)
Parameters
sqlUnaryExpression
SqlUnaryExpressionThe expression to visit.
Returns
- Expression
The modified expression, if it or any subexpression was modified; otherwise, returns the original expression.
VisitTable(TableExpression)
Visits the children of the table expression.
protected abstract Expression VisitTable(TableExpression tableExpression)
Parameters
tableExpression
TableExpressionThe expression to visit.
Returns
- Expression
The modified expression, if it or any subexpression was modified; otherwise, returns the original expression.
VisitTableValuedFunction(TableValuedFunctionExpression)
Visits the children of the table valued function expression.
protected abstract Expression VisitTableValuedFunction(TableValuedFunctionExpression tableValuedFunctionExpression)
Parameters
tableValuedFunctionExpression
TableValuedFunctionExpressionThe expression to visit.
Returns
- Expression
The modified expression, if it or any subexpression was modified; otherwise, returns the original expression.
VisitUnion(UnionExpression)
Visits the children of the union expression.
protected abstract Expression VisitUnion(UnionExpression unionExpression)
Parameters
unionExpression
UnionExpressionThe expression to visit.
Returns
- Expression
The modified expression, if it or any subexpression was modified; otherwise, returns the original expression.