EntityQueryModelVisitor EntityQueryModelVisitor Class

Definition

The core visitor that processes a query to be executed.

This type is typically used by database providers (and other extensions). It is generally not used in application code.

public abstract class EntityQueryModelVisitor : QueryModelVisitorBase
Public MustInherit Class EntityQueryModelVisitor
    Inherits QueryModelVisitorBase
Inheritance
System.ObjectSystem.Object
EntityQueryModelVisitorEntityQueryModelVisitor

Constructors

EntityQueryModelVisitor(IQueryOptimizer, INavigationRewritingExpressionVisitorFactory, ISubQueryMemberPushDownExpressionVisitor, IQuerySourceTracingExpressionVisitorFactory, IEntityResultFindingExpressionVisitorFactory, ITaskBlockingExpressionVisitor, IMemberAccessBindingExpressionVisitorFactory, IOrderingExpressionVisitorFactory, IProjectionExpressionVisitorFactory, IEntityQueryableExpressionVisitorFactory, IQueryAnnotationExtractor, IResultOperatorHandler, IEntityMaterializerSource, IExpressionPrinter, QueryCompilationContext) EntityQueryModelVisitor(IQueryOptimizer, INavigationRewritingExpressionVisitorFactory, ISubQueryMemberPushDownExpressionVisitor, IQuerySourceTracingExpressionVisitorFactory, IEntityResultFindingExpressionVisitorFactory, ITaskBlockingExpressionVisitor, IMemberAccessBindingExpressionVisitorFactory, IOrderingExpressionVisitorFactory, IProjectionExpressionVisitorFactory, IEntityQueryableExpressionVisitorFactory, IQueryAnnotationExtractor, IResultOperatorHandler, IEntityMaterializerSource, IExpressionPrinter, QueryCompilationContext)

Initializes a new instance of the EntityQueryModelVisitor class.

Fields

QueryContextParameter QueryContextParameter

Expression to reference the QueryContext parameter for a query.

Properties

CurrentParameter CurrentParameter

Gets the expression for the current parameter.

Expression Expression

Gets the expression that represents this query.

LinqOperatorProvider LinqOperatorProvider

Gets the ILinqOperatorProvider being used for this query.

QueryCompilationContext QueryCompilationContext

Gets the QueryCompilationContext being used for this query.

Methods

AddOrUpdateMapping(IQuerySource, Expression) AddOrUpdateMapping(IQuerySource, Expression)

Adds or updates the expression mapped to a query source.

BindMemberExpression(MemberExpression, Action<IProperty, IQuerySource>) BindMemberExpression(MemberExpression, Action(Of IProperty, IQuerySource))

Binds a member expression.

BindMemberExpression<TResult>(MemberExpression, IQuerySource, Func<IProperty, IQuerySource, TResult>) BindMemberExpression(Of TResult)(MemberExpression, IQuerySource, Func(Of IProperty, IQuerySource, TResult))

Binds a member expression.

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

Binds a member access to a value buffer access.

BindMethodCallExpression(MethodCallExpression, Action<IProperty, IQuerySource>) BindMethodCallExpression(MethodCallExpression, Action(Of IProperty, IQuerySource))

Binds a method call expression.

BindMethodCallExpression<TResult>(MethodCallExpression, IQuerySource, Func<IProperty, IQuerySource, TResult>) BindMethodCallExpression(Of TResult)(MethodCallExpression, IQuerySource, Func(Of IProperty, IQuerySource, TResult))

Binds a method call expression.

BindMethodCallExpression<TResult>(MethodCallExpression, Func<IProperty, IQuerySource, TResult>) BindMethodCallExpression(Of TResult)(MethodCallExpression, Func(Of IProperty, IQuerySource, TResult))

Binds a method call expression.

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

Binds a method call to a value buffer access.

BindNavigationPathPropertyExpression<TResult>(Expression, Func<IEnumerable<IPropertyBase>, IQuerySource, TResult>) BindNavigationPathPropertyExpression(Of TResult)(Expression, Func(Of IEnumerable(Of IPropertyBase), IQuerySource, TResult))

Binds a navigation path property expression.

BindReadValueMethod(Type, Expression, Int32) BindReadValueMethod(Type, Expression, Int32)

Binds a value buffer read.

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

Compiles nodes.

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

Compiles nodes.

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

Compiles nodes.

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

Compiles the node.

CreateAsyncQueryExecutor<TResult>(QueryModel) CreateAsyncQueryExecutor(Of TResult)(QueryModel)

Creates an action to asynchronously execute this query.

CreateExecutorLambda<TResults>() CreateExecutorLambda(Of TResults)()

Creates an action to execute this query.

CreatePropertyExpression(Expression, IProperty) CreatePropertyExpression(Expression, IProperty)

Creates an expression to access the given property on an given entity.

CreateQueryExecutor<TResult>(QueryModel) CreateQueryExecutor(Of TResult)(QueryModel)

Creates an action to execute this query.

ExtractQueryAnnotations(QueryModel) ExtractQueryAnnotations(QueryModel)

Populates QueryAnnotations based on annotations found in the query.

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

Includes a specific navigation property requested in the LINQ query.

IncludeNavigations(QueryModel) IncludeNavigations(QueryModel)

Includes related data requested in the LINQ query.

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

Includes related data requested in the LINQ query.

InterceptExceptions() InterceptExceptions()

Executes the query and logs any exceptions that occur.

IsPropertyMethod(MethodInfo) IsPropertyMethod(MethodInfo)

Determines if a System.Reflection.MethodInfo is referencing the Property<TProperty>(Object, String) method.

OptimizeQueryModel(QueryModel) OptimizeQueryModel(QueryModel)

Applies optimizations to the query.

ReplaceClauseReferences(Expression, IQuerySource, Boolean) ReplaceClauseReferences(Expression, IQuerySource, Boolean)

Translates a re-linq query model expression into a compiled query expression.

SingleResultToSequence(QueryModel, Type) SingleResultToSequence(QueryModel, Type)

Converts the results of the query from a single result to a series of results.

TrackEntitiesInResults<TResult>(QueryModel) TrackEntitiesInResults(Of TResult)(QueryModel)

Applies tracking behavior to the query.

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

Visits nodes.

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

Visits nodes

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

Visits nodes.

VisitMainFromClause(MainFromClause, QueryModel) VisitMainFromClause(MainFromClause, QueryModel)

Visits the node.

VisitOrdering(Ordering, QueryModel, OrderByClause, Int32) VisitOrdering(Ordering, QueryModel, OrderByClause, Int32)

Visits nodes.

VisitQueryModel(QueryModel) VisitQueryModel(QueryModel)

Visits the root node.

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

Visits nodes.

VisitSelectClause(SelectClause, QueryModel) VisitSelectClause(SelectClause, QueryModel)

Visits nodes.

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

Visits nodes.