Поделиться через


EntityQueryModelVisitor Класс

Определение

Основной посетитель, обрабатывающий выполняемый запрос.

Этот тип обычно используется поставщиками баз данных (и другими расширениями). Как правило, он не используется в коде приложения.

public abstract class EntityQueryModelVisitor : Remotion.Linq.QueryModelVisitorBase
type EntityQueryModelVisitor = class
    inherit QueryModelVisitorBase
Public MustInherit Class EntityQueryModelVisitor
Inherits QueryModelVisitorBase
Наследование
Remotion.Linq.QueryModelVisitorBase
EntityQueryModelVisitor
Производный

Конструкторы

EntityQueryModelVisitor(EntityQueryModelVisitorDependencies, QueryCompilationContext)

Инициализирует новый экземпляр класса EntityQueryModelVisitor.

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

Инициализирует новый экземпляр класса EntityQueryModelVisitor.

Поля

QueryContextParameter

Выражение для ссылки на QueryContext параметр запроса.

Свойства

CurrentParameter

Возвращает выражение для текущего параметра.

Expression

Возвращает выражение, представляющее этот запрос.

LinqOperatorProvider

Возвращает объект , используемый Microsoft.EntityFrameworkCore.Query.Internal.ILinqOperatorProvider для этого запроса.

QueryCompilationContext

Возвращает объект , используемый QueryCompilationContext для этого запроса.

SelectAsyncMethod

Сведения о методе _SelectAsync.

Методы

AddOrUpdateMapping(IQuerySource, Expression)

Добавляет или обновляет выражение, сопоставленное с источником запроса.

BindMemberExpression(MemberExpression, Action<IProperty,IQuerySource>)

Привязывает выражение-член.

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

Привязывает выражение-член.

BindMemberToValueBuffer(MemberExpression, Expression)

Привязывает доступ к члену к доступу к буферу значений.

BindMethodCallExpression(MethodCallExpression, Action<IProperty,IQuerySource>)

Привязывает выражение вызова метода.

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

Привязывает выражение вызова метода.

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

Привязывает выражение вызова метода.

BindMethodCallToEntity(MethodCallExpression, MethodCallExpression)

Привязывает вызов метода к доступу к теневым или теневым свойствам CLR.

BindMethodCallToValueBuffer(MethodCallExpression, Expression)

Привязывает вызов метода к доступу к буферу значений.

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

Привязывает выражение свойства пути навигации.

BindNavigationPathPropertyExpression<TResult>(Expression, Func<IReadOnlyList<IPropertyBase>,IQuerySource,TResult>)

Привязывает выражение свойства пути навигации.

BindReadValueMethod(Type, Expression, Int32, IProperty)

Привязывает чтение буфера значений.

BindReadValueMethod(Type, Expression, Int32)

Привязывает чтение буфера значений.

CallCreateTransparentIdentifier(Type, Expression, Expression)

Этот API поддерживает инфраструктуру Entity Framework Core и не предназначен для использования непосредственно из кода. В будущих выпусках этот API может быть изменен или удален.

CanOptimizeCorrelatedCollections()

Определяет, можно ли оптимизировать коррелированные коллекции (если таковые есть).

CompileAdditionalFromClauseExpression(AdditionalFromClause, QueryModel)

Компилирует Remotion.Linq.Clauses.AdditionalFromClause узлы.

CompileGroupJoinInnerSequenceExpression(GroupJoinClause, QueryModel)

Компилирует Remotion.Linq.Clauses.GroupJoinClause узлы.

CompileJoinClauseInnerSequenceExpression(JoinClause, QueryModel)

Компилирует Remotion.Linq.Clauses.JoinClause узлы.

CompileMainFromClauseExpression(MainFromClause, QueryModel)

Компилирует Remotion.Linq.Clauses.MainFromClause узел.

CreateAsyncQueryExecutor<TResult>(QueryModel)

Создает действие для асинхронного выполнения этого запроса.

CreateExecutorLambda<TResults>()

Создает действие для выполнения этого запроса.

CreatePropertyExpression(Expression, IProperty)

Создает выражение для доступа к заданному свойству данной сущности.

CreateQueryExecutor<TResult>(QueryModel)

Создает действие для выполнения этого запроса.

CreateTransparentIdentifierType(Type, Type)

Этот API поддерживает инфраструктуру Entity Framework Core и не предназначен для использования непосредственно из кода. В будущих выпусках этот API может быть изменен или удален.

ExtractQueryAnnotations(QueryModel)

Заполняет QueryAnnotations на основе заметок, найденных в запросе.

IncludeNavigations(IncludeSpecification, Type, Expression, Boolean)

Включает определенное свойство навигации, запрошенное в запросе LINQ.

IncludeNavigations(QueryModel, IReadOnlyCollection<IncludeSpecification>)

Включает связанные данные, запрошенные в запросе LINQ.

IncludeNavigations(QueryModel)

Включает связанные данные, запрошенные в запросе LINQ.

InterceptExceptions()

Выполняет запрос и регистрирует все возникающие исключения.

IntroduceTransparentScope(IQuerySource, QueryModel, Int32, Type)

Этот API поддерживает инфраструктуру Entity Framework Core и не предназначен для использования непосредственно из кода. В будущих выпусках этот API может быть изменен или удален.

IsPropertyMethod(MethodInfo)

Определяет, ссылается ли MethodInfo объект на Property<TProperty>(Object, String) метод .

OnBeforeNavigationRewrite(QueryModel)

Предварительная обработка модели запроса перед перезаписыванием ее навигации.

OptimizeQueryModel(QueryModel, Boolean)

Применяет оптимизацию к запросу.

OptimizeQueryModel(QueryModel)

Применяет оптимизацию к запросу.

RemoveOrderings(QueryModel)

Удаляет упорядочения для заданной модели запроса.

ReplaceClauseReferences(Expression, IQuerySource, Boolean)

Преобразует выражение модели запроса re-linq в скомпилированное выражение запроса.

RewriteProjectedCollectionNavigationsToIncludes(QueryModel)
Устаревшие..

Перезаписывает проекции навигации по коллекциям, чтобы их можно было обрабатывать конвейером Include.

ShouldApplyDefiningQuery(IEntityType, IQuerySource)

Определите, следует ли применять определяющий запрос при запросе к целевому типу сущности.

SingleResultToSequence(QueryModel, Type)

Преобразует результаты запроса из одного результата в последовательность результатов.

TrackEntitiesInResults<TResult>(QueryModel)

Применяет поведение отслеживания к запросу.

VisitAdditionalFromClause(AdditionalFromClause, QueryModel, Int32)

Посещения Remotion.Linq.Clauses.AdditionalFromClause узлов.

VisitGroupJoinClause(GroupJoinClause, QueryModel, Int32)

Узлы посещений Remotion.Linq.Clauses.GroupJoinClause

VisitJoinClause(JoinClause, QueryModel, Int32)

Посещения Remotion.Linq.Clauses.JoinClause узлов.

VisitMainFromClause(MainFromClause, QueryModel)

Remotion.Linq.Clauses.MainFromClause Посещает узел.

VisitOrdering(Ordering, QueryModel, OrderByClause, Int32)

Посещения Remotion.Linq.Clauses.Ordering узлов.

VisitQueryModel(QueryModel)

Посещает корневой Remotion.Linq.QueryModel узел.

VisitResultOperator(ResultOperatorBase, QueryModel, Int32)

Посещения Remotion.Linq.Clauses.ResultOperatorBase узлов.

VisitSelectClause(SelectClause, QueryModel)

Посещения Remotion.Linq.Clauses.SelectClause узлов.

VisitWhereClause(WhereClause, QueryModel, Int32)

Посещения Remotion.Linq.Clauses.WhereClause узлов.

Применяется к