RelationalQueryModelVisitor RelationalQueryModelVisitor Class

Definition

The default relational visitor.

public class RelationalQueryModelVisitor : EntityQueryModelVisitor
Public Class RelationalQueryModelVisitor
    Inherits EntityQueryModelVisitor
Inheritance
System.ObjectSystem.Object
RelationalQueryModelVisitorRelationalQueryModelVisitor

Inherited Members

Microsoft.EntityFrameworkCore.Query.EntityQueryModelVisitor

IsPropertyMethod(System.Reflection.MethodInfo)IsPropertyMethod(System.Reflection.MethodInfo)
CreatePropertyExpression(System.Linq.Expressions.Expression, IProperty)CreatePropertyExpression(System.Linq.Expressions.Expression, IProperty)
OptimizeQueryModel(QueryModel)OptimizeQueryModel(QueryModel)
SingleResultToSequence(QueryModel, System.Type)SingleResultToSequence(QueryModel, System.Type)
IncludeNavigations(QueryModel)IncludeNavigations(QueryModel)
VisitMainFromClause(MainFromClause, QueryModel)VisitMainFromClause(MainFromClause, QueryModel)
VisitOrdering(Ordering, QueryModel, OrderByClause, System.Int32)VisitOrdering(Ordering, QueryModel, OrderByClause, System.Int32)
VisitSelectClause(SelectClause, QueryModel)VisitSelectClause(SelectClause, QueryModel)
ReplaceClauseReferences(System.Linq.Expressions.Expression, IQuerySource, System.Boolean)ReplaceClauseReferences(System.Linq.Expressions.Expression, IQuerySource, System.Boolean)
AddOrUpdateMapping(IQuerySource, System.Linq.Expressions.Expression)AddOrUpdateMapping(IQuerySource, System.Linq.Expressions.Expression)
BindReadValueMethod(System.Type, System.Linq.Expressions.Expression, System.Int32)BindReadValueMethod(System.Type, System.Linq.Expressions.Expression, System.Int32)
BindNavigationPathPropertyExpression<TResult>(System.Linq.Expressions.Expression, System.Func<System.Collections.Generic.IEnumerable<IPropertyBase>, IQuerySource, TResult>)BindNavigationPathPropertyExpression(Of TResult)(System.Linq.Expressions.Expression, System.Func(Of System.Collections.Generic.IEnumerable(Of IPropertyBase), IQuerySource, TResult))
BindMemberExpression(System.Linq.Expressions.MemberExpression, System.Action<IProperty, IQuerySource>)BindMemberExpression(System.Linq.Expressions.MemberExpression, System.Action(Of IProperty, IQuerySource))
BindMemberExpression<TResult>(System.Linq.Expressions.MemberExpression, IQuerySource, System.Func<IProperty, IQuerySource, TResult>)BindMemberExpression(Of TResult)(System.Linq.Expressions.MemberExpression, IQuerySource, System.Func(Of IProperty, IQuerySource, TResult))
BindMethodCallExpression<TResult>(System.Linq.Expressions.MethodCallExpression, IQuerySource, System.Func<IProperty, IQuerySource, TResult>)BindMethodCallExpression(Of TResult)(System.Linq.Expressions.MethodCallExpression, IQuerySource, System.Func(Of IProperty, IQuerySource, TResult))
BindMethodCallExpression<TResult>(System.Linq.Expressions.MethodCallExpression, System.Func<IProperty, IQuerySource, TResult>)BindMethodCallExpression(Of TResult)(System.Linq.Expressions.MethodCallExpression, System.Func(Of IProperty, IQuerySource, TResult))
BindMethodCallExpression(System.Linq.Expressions.MethodCallExpression, System.Action<IProperty, IQuerySource>)BindMethodCallExpression(System.Linq.Expressions.MethodCallExpression, System.Action(Of IProperty, IQuerySource))

Constructors

RelationalQueryModelVisitor(IQueryOptimizer, INavigationRewritingExpressionVisitorFactory, ISubQueryMemberPushDownExpressionVisitor, IQuerySourceTracingExpressionVisitorFactory, IEntityResultFindingExpressionVisitorFactory, ITaskBlockingExpressionVisitor, IMemberAccessBindingExpressionVisitorFactory, IOrderingExpressionVisitorFactory, IProjectionExpressionVisitorFactory, IEntityQueryableExpressionVisitorFactory, IQueryAnnotationExtractor, IResultOperatorHandler, IEntityMaterializerSource, IExpressionPrinter, IRelationalAnnotationProvider, IIncludeExpressionVisitorFactory, ISqlTranslatingExpressionVisitorFactory, ICompositePredicateExpressionVisitorFactory, IConditionalRemovingExpressionVisitorFactory, IQueryFlattenerFactory, IDbContextOptions, RelationalQueryCompilationContext, RelationalQueryModelVisitor) RelationalQueryModelVisitor(IQueryOptimizer, INavigationRewritingExpressionVisitorFactory, ISubQueryMemberPushDownExpressionVisitor, IQuerySourceTracingExpressionVisitorFactory, IEntityResultFindingExpressionVisitorFactory, ITaskBlockingExpressionVisitor, IMemberAccessBindingExpressionVisitorFactory, IOrderingExpressionVisitorFactory, IProjectionExpressionVisitorFactory, IEntityQueryableExpressionVisitorFactory, IQueryAnnotationExtractor, IResultOperatorHandler, IEntityMaterializerSource, IExpressionPrinter, IRelationalAnnotationProvider, IIncludeExpressionVisitorFactory, ISqlTranslatingExpressionVisitorFactory, ICompositePredicateExpressionVisitorFactory, IConditionalRemovingExpressionVisitorFactory, IQueryFlattenerFactory, IDbContextOptions, RelationalQueryCompilationContext, RelationalQueryModelVisitor)

This API supports the Entity Framework Core infrastructure and is not intended to be used directly from your code. This API may change or be removed in future releases.

public RelationalQueryModelVisitor(IQueryOptimizer queryOptimizer, INavigationRewritingExpressionVisitorFactory navigationRewritingExpressionVisitorFactory, ISubQueryMemberPushDownExpressionVisitor subQueryMemberPushDownExpressionVisitor, IQuerySourceTracingExpressionVisitorFactory querySourceTracingExpressionVisitorFactory, IEntityResultFindingExpressionVisitorFactory entityResultFindingExpressionVisitorFactory, ITaskBlockingExpressionVisitor taskBlockingExpressionVisitor, IMemberAccessBindingExpressionVisitorFactory memberAccessBindingExpressionVisitorFactory, IOrderingExpressionVisitorFactory orderingExpressionVisitorFactory, IProjectionExpressionVisitorFactory projectionExpressionVisitorFactory, IEntityQueryableExpressionVisitorFactory entityQueryableExpressionVisitorFactory, IQueryAnnotationExtractor queryAnnotationExtractor, IResultOperatorHandler resultOperatorHandler, IEntityMaterializerSource entityMaterializerSource, IExpressionPrinter expressionPrinter, IRelationalAnnotationProvider relationalAnnotationProvider, IIncludeExpressionVisitorFactory includeExpressionVisitorFactory, ISqlTranslatingExpressionVisitorFactory sqlTranslatingExpressionVisitorFactory, ICompositePredicateExpressionVisitorFactory compositePredicateExpressionVisitorFactory, IConditionalRemovingExpressionVisitorFactory conditionalRemovingExpressionVisitorFactory, IQueryFlattenerFactory queryFlattenerFactory, IDbContextOptions contextOptions, RelationalQueryCompilationContext queryCompilationContext, RelationalQueryModelVisitor parentQueryModelVisitor)
Public Sub New(queryOptimizer As IQueryOptimizer, navigationRewritingExpressionVisitorFactory As INavigationRewritingExpressionVisitorFactory, subQueryMemberPushDownExpressionVisitor As ISubQueryMemberPushDownExpressionVisitor, querySourceTracingExpressionVisitorFactory As IQuerySourceTracingExpressionVisitorFactory, entityResultFindingExpressionVisitorFactory As IEntityResultFindingExpressionVisitorFactory, taskBlockingExpressionVisitor As ITaskBlockingExpressionVisitor, memberAccessBindingExpressionVisitorFactory As IMemberAccessBindingExpressionVisitorFactory, orderingExpressionVisitorFactory As IOrderingExpressionVisitorFactory, projectionExpressionVisitorFactory As IProjectionExpressionVisitorFactory, entityQueryableExpressionVisitorFactory As IEntityQueryableExpressionVisitorFactory, queryAnnotationExtractor As IQueryAnnotationExtractor, resultOperatorHandler As IResultOperatorHandler, entityMaterializerSource As IEntityMaterializerSource, expressionPrinter As IExpressionPrinter, relationalAnnotationProvider As IRelationalAnnotationProvider, includeExpressionVisitorFactory As IIncludeExpressionVisitorFactory, sqlTranslatingExpressionVisitorFactory As ISqlTranslatingExpressionVisitorFactory, compositePredicateExpressionVisitorFactory As ICompositePredicateExpressionVisitorFactory, conditionalRemovingExpressionVisitorFactory As IConditionalRemovingExpressionVisitorFactory, queryFlattenerFactory As IQueryFlattenerFactory, contextOptions As IDbContextOptions, queryCompilationContext As RelationalQueryCompilationContext, parentQueryModelVisitor As RelationalQueryModelVisitor)
Parameters

Properties

ContextOptions ContextOptions

Gets the options for the target context.

protected virtual IDbContextOptions ContextOptions { get; }
Protected Overridable ReadOnly Property ContextOptions As IDbContextOptions
Value
IDbContextOptions IDbContextOptions

Options for the target context.

ParentQueryModelVisitor ParentQueryModelVisitor

Gets the parent query model visitor, or null if there is no parent.

public virtual RelationalQueryModelVisitor ParentQueryModelVisitor { get; }
Public Overridable ReadOnly Property ParentQueryModelVisitor As RelationalQueryModelVisitor
Value
RelationalQueryModelVisitor RelationalQueryModelVisitor

The parent query model visitor, or null if there is no parent.

Queries Queries

The SelectExpressions active in the current query compilation.

public virtual ICollection<SelectExpression> Queries { get; }
Public Overridable ReadOnly Property Queries As ICollection(Of SelectExpression)
Value
System.Collections.Generic.ICollection<SelectExpression> System.Collections.Generic.ICollection(Of SelectExpression)

QueriesBySource QueriesBySource

The SelectExpressions for this query, mapped by query source.

protected virtual Dictionary<IQuerySource, SelectExpression> QueriesBySource { get; }
Protected Overridable ReadOnly Property QueriesBySource As Dictionary(Of IQuerySource, SelectExpression)
Value
System.Collections.Generic.Dictionary<IQuerySource, SelectExpression> System.Collections.Generic.Dictionary(Of IQuerySource, SelectExpression)

A map of query source to select expression.

QueryCompilationContext QueryCompilationContext

Context for the query compilation.

public virtual RelationalQueryCompilationContext QueryCompilationContext { get; }
Public Overridable ReadOnly Property QueryCompilationContext As RelationalQueryCompilationContext

RequiresClientEval RequiresClientEval

Gets or sets a value indicating whether the query requires client eval.

public virtual bool RequiresClientEval { get; set; }
Public Overridable Property RequiresClientEval As Boolean
Value
System.Boolean System.Boolean

true if the query requires client eval, false if not.

RequiresClientFilter RequiresClientFilter

Gets or sets a value indicating whether the query requires client filter.

public virtual bool RequiresClientFilter { get; set; }
Public Overridable Property RequiresClientFilter As Boolean
Value
System.Boolean System.Boolean

true if the query requires client filter, false if not.

RequiresClientJoin RequiresClientJoin

Gets or sets a value indicating whether the query requires client join.

public virtual bool RequiresClientJoin { get; set; }
Public Overridable Property RequiresClientJoin As Boolean
Value
System.Boolean System.Boolean

true if the query requires client join, false if not.

RequiresClientOrderBy RequiresClientOrderBy

Gets or sets a value indicating whether the query requires client order by.

public virtual bool RequiresClientOrderBy { get; set; }
Public Overridable Property RequiresClientOrderBy As Boolean
Value
System.Boolean System.Boolean

true if the query requires client order by, false if not.

RequiresClientProjection RequiresClientProjection

Gets or sets a value indicating whether the query requires client projection.

public virtual bool RequiresClientProjection { get; set; }
Public Overridable Property RequiresClientProjection As Boolean
Value
System.Boolean System.Boolean

true if the query requires client projection, false if not.

RequiresClientResultOperator RequiresClientResultOperator

Gets or sets a value indicating whether the query requires client result operator.

public virtual bool RequiresClientResultOperator { get; set; }
Public Overridable Property RequiresClientResultOperator As Boolean
Value
System.Boolean System.Boolean

true if the query requires client result operator, false if not.

RequiresClientSelectMany RequiresClientSelectMany

Gets or sets a value indicating whether the query requires client select many.

public virtual bool RequiresClientSelectMany { get; set; }
Public Overridable Property RequiresClientSelectMany As Boolean
Value
System.Boolean System.Boolean

true if the query requires client select many, false if not.

Methods

AddQuery(IQuerySource, SelectExpression) AddQuery(IQuerySource, SelectExpression)

Adds a SelectExpression to this query.

public virtual void AddQuery(IQuerySource querySource, SelectExpression selectExpression)
Public Overridable Sub AddQuery(querySource As IQuerySource, selectExpression As SelectExpression)
Parameters
querySource
IQuerySource IQuerySource

The query source.

selectExpression
SelectExpression SelectExpression

The select expression.

BindLocalMethodCallExpression(MethodCallExpression) BindLocalMethodCallExpression(MethodCallExpression)

Bind a local method call expression.

public virtual Expression BindLocalMethodCallExpression(MethodCallExpression methodCallExpression)
Public Overridable Function BindLocalMethodCallExpression(methodCallExpression As MethodCallExpression) As Expression
Parameters
methodCallExpression
System.Linq.Expressions.MethodCallExpression System.Linq.Expressions.MethodCallExpression

The local method call expression.

Returns
System.Linq.Expressions.Expression System.Linq.Expressions.Expression

An Expression.

BindMemberExpression(MemberExpression, Func, Boolean) BindMemberExpression(Of TResult)(MemberExpression, Func(Of IProperty, IQuerySource, SelectExpression, TResult), Boolean)

Bind a member expression.

public virtual TResult BindMemberExpression<TResult>(MemberExpression memberExpression, Func<IProperty, IQuerySource, SelectExpression, TResult> memberBinder, bool bindSubQueries = false)
Public Overridable Function BindMemberExpression(Of TResult)(memberExpression As MemberExpression, memberBinder As Func(Of IProperty, IQuerySource, SelectExpression, TResult), bindSubQueries As Boolean = False) As TResult
Type Parameters
TResult

Type of the result.

Parameters
memberExpression
System.Linq.Expressions.MemberExpression System.Linq.Expressions.MemberExpression

The member access expression.

memberBinder
System.Func<IProperty, IQuerySource, SelectExpression, TResult> System.Func(Of IProperty, IQuerySource, SelectExpression, TResult)

The member binder.

bindSubQueries
System.Boolean System.Boolean

true to bind sub queries.

Returns
TResult TResult

A TResult.

BindMemberToOuterQueryParameter(MemberExpression) BindMemberToOuterQueryParameter(MemberExpression)

public virtual Expression BindMemberToOuterQueryParameter(MemberExpression memberExpression)
Public Overridable Function BindMemberToOuterQueryParameter(memberExpression As MemberExpression) As Expression
Parameters
memberExpression
System.Linq.Expressions.MemberExpression System.Linq.Expressions.MemberExpression
Returns
System.Linq.Expressions.Expression System.Linq.Expressions.Expression

BindMemberToValueBuffer(MemberExpression, Expression) BindMemberToValueBuffer(MemberExpression, Expression)

Bind a member expression to a value buffer access.

public override Expression BindMemberToValueBuffer(MemberExpression memberExpression, Expression expression)
Public Overrides Function BindMemberToValueBuffer(memberExpression As MemberExpression, expression As Expression) As Expression
Parameters
memberExpression
System.Linq.Expressions.MemberExpression System.Linq.Expressions.MemberExpression

The member access expression.

expression
System.Linq.Expressions.Expression System.Linq.Expressions.Expression

The target expression.

Returns
System.Linq.Expressions.Expression System.Linq.Expressions.Expression

An Expression.

Overrides

BindMethodCallExpression(MethodCallExpression, Func, Boolean) BindMethodCallExpression(Of TResult)(MethodCallExpression, Func(Of IProperty, IQuerySource, SelectExpression, TResult), Boolean)

Bind a method call expression.

public virtual TResult BindMethodCallExpression<TResult>(MethodCallExpression methodCallExpression, Func<IProperty, IQuerySource, SelectExpression, TResult> memberBinder, bool bindSubQueries = false)
Public Overridable Function BindMethodCallExpression(Of TResult)(methodCallExpression As MethodCallExpression, memberBinder As Func(Of IProperty, IQuerySource, SelectExpression, TResult), bindSubQueries As Boolean = False) As TResult
Type Parameters
TResult

Type of the result.

Parameters
methodCallExpression
System.Linq.Expressions.MethodCallExpression System.Linq.Expressions.MethodCallExpression

The method call expression.

memberBinder
System.Func<IProperty, IQuerySource, SelectExpression, TResult> System.Func(Of IProperty, IQuerySource, SelectExpression, TResult)

The member binder.

bindSubQueries
System.Boolean System.Boolean

true to bind sub queries.

Returns
TResult TResult

A TResult.

BindMethodCallToValueBuffer(MethodCallExpression, Expression) BindMethodCallToValueBuffer(MethodCallExpression, Expression)

Bind a method call expression to a value buffer access.

public override Expression BindMethodCallToValueBuffer(MethodCallExpression methodCallExpression, Expression expression)
Public Overrides Function BindMethodCallToValueBuffer(methodCallExpression As MethodCallExpression, expression As Expression) As Expression
Parameters
methodCallExpression
System.Linq.Expressions.MethodCallExpression System.Linq.Expressions.MethodCallExpression

The method call expression.

expression
System.Linq.Expressions.Expression System.Linq.Expressions.Expression

The target expression.

Returns
System.Linq.Expressions.Expression System.Linq.Expressions.Expression

An Expression.

Overrides

BindMethodToOuterQueryParameter(MethodCallExpression) BindMethodToOuterQueryParameter(MethodCallExpression)

public virtual Expression BindMethodToOuterQueryParameter(MethodCallExpression methodCallExpression)
Public Overridable Function BindMethodToOuterQueryParameter(methodCallExpression As MethodCallExpression) As Expression
Parameters
methodCallExpression
System.Linq.Expressions.MethodCallExpression System.Linq.Expressions.MethodCallExpression
Returns
System.Linq.Expressions.Expression System.Linq.Expressions.Expression

CompileAdditionalFromClauseExpression(AdditionalFromClause, QueryModel) CompileAdditionalFromClauseExpression(AdditionalFromClause, QueryModel)

Compile an additional from clause expression.

protected override Expression CompileAdditionalFromClauseExpression(AdditionalFromClause additionalFromClause, QueryModel queryModel)
Protected Overrides Function CompileAdditionalFromClauseExpression(additionalFromClause As AdditionalFromClause, queryModel As QueryModel) As Expression
Parameters
additionalFromClause
AdditionalFromClause AdditionalFromClause

The additional from clause being compiled.

queryModel
QueryModel QueryModel

The query model.

Returns
System.Linq.Expressions.Expression System.Linq.Expressions.Expression

An Expression.

CompileGroupJoinInnerSequenceExpression(GroupJoinClause, QueryModel) CompileGroupJoinInnerSequenceExpression(GroupJoinClause, QueryModel)

Compile a group join inner sequence expression.

protected override Expression CompileGroupJoinInnerSequenceExpression(GroupJoinClause groupJoinClause, QueryModel queryModel)
Protected Overrides Function CompileGroupJoinInnerSequenceExpression(groupJoinClause As GroupJoinClause, queryModel As QueryModel) As Expression
Parameters
groupJoinClause
GroupJoinClause GroupJoinClause

The group join clause being compiled.

queryModel
QueryModel QueryModel

The query model.

Returns
System.Linq.Expressions.Expression System.Linq.Expressions.Expression

An Expression.

CompileJoinClauseInnerSequenceExpression(JoinClause, QueryModel) CompileJoinClauseInnerSequenceExpression(JoinClause, QueryModel)

Compile a join clause inner sequence expression.

protected override Expression CompileJoinClauseInnerSequenceExpression(JoinClause joinClause, QueryModel queryModel)
Protected Overrides Function CompileJoinClauseInnerSequenceExpression(joinClause As JoinClause, queryModel As QueryModel) As Expression
Parameters
joinClause
JoinClause JoinClause

The join clause being compiled.

queryModel
QueryModel QueryModel

The query model.

Returns
System.Linq.Expressions.Expression System.Linq.Expressions.Expression

An Expression.

CompileMainFromClauseExpression(MainFromClause, QueryModel) CompileMainFromClauseExpression(MainFromClause, QueryModel)

Compile main from clause expression.

protected override Expression CompileMainFromClauseExpression(MainFromClause mainFromClause, QueryModel queryModel)
Protected Overrides Function CompileMainFromClauseExpression(mainFromClause As MainFromClause, queryModel As QueryModel) As Expression
Parameters
mainFromClause
MainFromClause MainFromClause

The main from clause.

queryModel
QueryModel QueryModel

The query model.

Returns
System.Linq.Expressions.Expression System.Linq.Expressions.Expression

An Expression.

IncludeNavigations(IncludeSpecification, Type, Expression, Boolean) IncludeNavigations(IncludeSpecification, Type, Expression, Boolean)

High-level method called to perform Include compilation for a single Include.

protected override void IncludeNavigations(IncludeSpecification includeSpecification, Type resultType, Expression accessorExpression, bool querySourceRequiresTracking)
Protected Overrides Sub IncludeNavigations(includeSpecification As IncludeSpecification, resultType As Type, accessorExpression As Expression, querySourceRequiresTracking As Boolean)
Parameters
includeSpecification
IncludeSpecification IncludeSpecification

The navigation property to be included.

resultType
System.Type System.Type

The type of results returned by the query.

accessorExpression
System.Linq.Expressions.Expression System.Linq.Expressions.Expression

Expression for the navigation property to be included.

querySourceRequiresTracking
System.Boolean System.Boolean

A value indicating whether results of this query are to be tracked.

Overrides

IncludeNavigations(QueryModel, IReadOnlyCollection) IncludeNavigations(QueryModel, IReadOnlyCollection(Of IncludeSpecification))

High-level method called to perform Include compilation.

protected override void IncludeNavigations(QueryModel queryModel, IReadOnlyCollection<IncludeSpecification> includeSpecifications)
Protected Overrides Sub IncludeNavigations(queryModel As QueryModel, includeSpecifications As IReadOnlyCollection(Of IncludeSpecification))
Parameters
queryModel
QueryModel QueryModel

The query model.

includeSpecifications
System.Collections.Generic.IReadOnlyCollection<IncludeSpecification> System.Collections.Generic.IReadOnlyCollection(Of IncludeSpecification)

Related data to be included.

OptimizeJoinClause(JoinClause, QueryModel, Int32, Action, MethodInfo, Boolean) OptimizeJoinClause(JoinClause, QueryModel, Int32, Action, MethodInfo, Boolean)

Optimize a join clause.

protected virtual void OptimizeJoinClause(JoinClause joinClause, QueryModel queryModel, int index, Action baseVisitAction, MethodInfo operatorToFlatten, bool groupJoin = false)
Protected Overridable Sub OptimizeJoinClause(joinClause As JoinClause, queryModel As QueryModel, index As Integer, baseVisitAction As Action, operatorToFlatten As MethodInfo, groupJoin As Boolean = False)
Parameters
joinClause
JoinClause JoinClause

The join clause being visited.

queryModel
QueryModel QueryModel

The query model.

index
System.Int32 System.Int32

Index of the node being visited.

baseVisitAction
System.Action System.Action

The base visit action.

operatorToFlatten
System.Reflection.MethodInfo System.Reflection.MethodInfo

The operator to flatten.

groupJoin
System.Boolean System.Boolean

true if an outer join should be performed.

RegisterSubQueryVisitor(IQuerySource, RelationalQueryModelVisitor) RegisterSubQueryVisitor(IQuerySource, RelationalQueryModelVisitor)

Registers a sub query visitor.

public virtual void RegisterSubQueryVisitor(IQuerySource querySource, RelationalQueryModelVisitor queryModelVisitor)
Public Overridable Sub RegisterSubQueryVisitor(querySource As IQuerySource, queryModelVisitor As RelationalQueryModelVisitor)
Parameters
querySource
IQuerySource IQuerySource

The query source.

queryModelVisitor
RelationalQueryModelVisitor RelationalQueryModelVisitor

The query model visitor.

TryGetQuery(IQuerySource) TryGetQuery(IQuerySource)

Try and get the active SelectExpression for a given query source.

public virtual SelectExpression TryGetQuery(IQuerySource querySource)
Public Overridable Function TryGetQuery(querySource As IQuerySource) As SelectExpression
Parameters
querySource
IQuerySource IQuerySource

The query source.

Returns

A SelectExpression, or null.

VisitAdditionalFromClause(AdditionalFromClause, QueryModel, Int32) VisitAdditionalFromClause(AdditionalFromClause, QueryModel, Int32)

Visit an additional from clause.

public override void VisitAdditionalFromClause(AdditionalFromClause fromClause, QueryModel queryModel, int index)
Public Overrides Sub VisitAdditionalFromClause(fromClause As AdditionalFromClause, queryModel As QueryModel, index As Integer)
Parameters
fromClause
AdditionalFromClause AdditionalFromClause

The from clause being visited.

queryModel
QueryModel QueryModel

The query model.

index
System.Int32 System.Int32

Index of the node being visited.

VisitGroupJoinClause(GroupJoinClause, QueryModel, Int32) VisitGroupJoinClause(GroupJoinClause, QueryModel, Int32)

Visit a group join clause.

public override void VisitGroupJoinClause(GroupJoinClause groupJoinClause, QueryModel queryModel, int index)
Public Overrides Sub VisitGroupJoinClause(groupJoinClause As GroupJoinClause, queryModel As QueryModel, index As Integer)
Parameters
groupJoinClause
GroupJoinClause GroupJoinClause

The group join being visited.

queryModel
QueryModel QueryModel

The query model.

index
System.Int32 System.Int32

Index of the node being visited.

VisitJoinClause(JoinClause, QueryModel, Int32) VisitJoinClause(JoinClause, QueryModel, Int32)

Visit a join clause.

public override void VisitJoinClause(JoinClause joinClause, QueryModel queryModel, int index)
Public Overrides Sub VisitJoinClause(joinClause As JoinClause, queryModel As QueryModel, index As Integer)
Parameters
joinClause
JoinClause JoinClause

The join clause being visited.

queryModel
QueryModel QueryModel

The query model.

index
System.Int32 System.Int32

Index of the node being visited.

VisitOrderByClause(OrderByClause, QueryModel, Int32) VisitOrderByClause(OrderByClause, QueryModel, Int32)

Visit an order by clause.

public override void VisitOrderByClause(OrderByClause orderByClause, QueryModel queryModel, int index)
Public Overrides Sub VisitOrderByClause(orderByClause As OrderByClause, queryModel As QueryModel, index As Integer)
Parameters
orderByClause
OrderByClause OrderByClause

The order by clause.

queryModel
QueryModel QueryModel

The query model.

index
System.Int32 System.Int32

Index of the node being visited.

VisitQueryModel(QueryModel) VisitQueryModel(QueryModel)

Visit a query model.

public override void VisitQueryModel(QueryModel queryModel)
Public Overrides Sub VisitQueryModel(queryModel As QueryModel)
Parameters
queryModel
QueryModel QueryModel

The query model.

VisitResultOperator(ResultOperatorBase, QueryModel, Int32) VisitResultOperator(ResultOperatorBase, QueryModel, Int32)

Visit a result operator.

public override void VisitResultOperator(ResultOperatorBase resultOperator, QueryModel queryModel, int index)
Public Overrides Sub VisitResultOperator(resultOperator As ResultOperatorBase, queryModel As QueryModel, index As Integer)
Parameters
resultOperator
ResultOperatorBase ResultOperatorBase

The result operator being visited.

queryModel
QueryModel QueryModel

The query model.

index
System.Int32 System.Int32

Index of the node being visited.

VisitSubQueryModel(QueryModel) VisitSubQueryModel(QueryModel)

Visit a sub-query model.

public virtual void VisitSubQueryModel(QueryModel queryModel)
Public Overridable Sub VisitSubQueryModel(queryModel As QueryModel)
Parameters
queryModel
QueryModel QueryModel

The sub-query model.

VisitWhereClause(WhereClause, QueryModel, Int32) VisitWhereClause(WhereClause, QueryModel, Int32)

Visit a where clause.

public override void VisitWhereClause(WhereClause whereClause, QueryModel queryModel, int index)
Public Overrides Sub VisitWhereClause(whereClause As WhereClause, queryModel As QueryModel, index As Integer)
Parameters
whereClause
WhereClause WhereClause

The where clause being visited.

queryModel
QueryModel QueryModel

The query model.

index
System.Int32 System.Int32

Index of the node being visited.

WarnClientEval(Object) WarnClientEval(Object)

Generated a client-eval warning

protected virtual void WarnClientEval(object expression)
Protected Overridable Sub WarnClientEval(expression As Object)
Parameters
expression
System.Object System.Object

The expression being client-eval'd.