EntityQueryModelVisitor Classe

Definizione

Visitatore principale che elabora una query da eseguire.

Questo tipo viene in genere usato dai provider di database (e altre estensioni). In genere non viene usato nel codice dell'applicazione.

public abstract class EntityQueryModelVisitor : Remotion.Linq.QueryModelVisitorBase
type EntityQueryModelVisitor = class
    inherit QueryModelVisitorBase
Public MustInherit Class EntityQueryModelVisitor
Inherits QueryModelVisitorBase
Ereditarietà
Remotion.Linq.QueryModelVisitorBase
EntityQueryModelVisitor
Derivato

Costruttori

EntityQueryModelVisitor(EntityQueryModelVisitorDependencies, QueryCompilationContext)

Inizializza una nuova istanza della classe EntityQueryModelVisitor.

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

Inizializza una nuova istanza della classe EntityQueryModelVisitor.

Campi

QueryContextParameter

Espressione per fare riferimento al QueryContext parametro per una query.

Proprietà

CurrentParameter

Ottiene l'espressione per il parametro corrente.

Expression

Ottiene l'espressione che rappresenta questa query.

LinqOperatorProvider

Ottiene l'oggetto Microsoft.EntityFrameworkCore.Query.Internal.ILinqOperatorProvider usato per questa query.

QueryCompilationContext

Ottiene l'oggetto QueryCompilationContext usato per questa query.

SelectAsyncMethod

Informazioni sul metodo _SelectAsync.

Metodi

AddOrUpdateMapping(IQuerySource, Expression)

Aggiunge o aggiorna l'espressione mappata a un'origine query.

BindMemberExpression(MemberExpression, Action<IProperty,IQuerySource>)

Associa un'espressione membro.

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

Associa un'espressione membro.

BindMemberToValueBuffer(MemberExpression, Expression)

Associa un accesso membro a un accesso al buffer dei valori.

BindMethodCallExpression(MethodCallExpression, Action<IProperty,IQuerySource>)

Associa un'espressione di chiamata al metodo.

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

Associa un'espressione di chiamata al metodo.

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

Associa un'espressione di chiamata al metodo.

BindMethodCallToEntity(MethodCallExpression, MethodCallExpression)

Associa una chiamata al metodo a un accesso a una proprietà CLR o shadow.

BindMethodCallToValueBuffer(MethodCallExpression, Expression)

Associa una chiamata di metodo a un accesso al buffer dei valori.

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

Associa un'espressione di proprietà del percorso di spostamento.

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

Associa un'espressione di proprietà del percorso di spostamento.

BindReadValueMethod(Type, Expression, Int32, IProperty)

Associa un buffer di valori in lettura.

BindReadValueMethod(Type, Expression, Int32)

Associa un buffer di valori in lettura.

CallCreateTransparentIdentifier(Type, Expression, Expression)

Questa API supporta l'infrastruttura Entity Framework Core e non deve essere usata direttamente dal codice. Questa API può cambiare o essere rimossa nelle versioni future.

CanOptimizeCorrelatedCollections()

Determina se le raccolte correlate (se presenti) possono essere ottimizzate.

CompileAdditionalFromClauseExpression(AdditionalFromClause, QueryModel)

Remotion.Linq.Clauses.AdditionalFromClause Compila i nodi.

CompileGroupJoinInnerSequenceExpression(GroupJoinClause, QueryModel)

Remotion.Linq.Clauses.GroupJoinClause Compila i nodi.

CompileJoinClauseInnerSequenceExpression(JoinClause, QueryModel)

Remotion.Linq.Clauses.JoinClause Compila i nodi.

CompileMainFromClauseExpression(MainFromClause, QueryModel)

Compila il Remotion.Linq.Clauses.MainFromClause nodo.

CreateAsyncQueryExecutor<TResult>(QueryModel)

Crea un'azione per eseguire in modo asincrono questa query.

CreateExecutorLambda<TResults>()

Crea un'azione per eseguire questa query.

CreatePropertyExpression(Expression, IProperty)

Crea un'espressione per accedere alla proprietà specificata in un'entità specificata.

CreateQueryExecutor<TResult>(QueryModel)

Crea un'azione per eseguire questa query.

CreateTransparentIdentifierType(Type, Type)

Questa API supporta l'infrastruttura Entity Framework Core e non deve essere usata direttamente dal codice. Questa API può cambiare o essere rimossa nelle versioni future.

ExtractQueryAnnotations(QueryModel)

QueryAnnotations Popola in base alle annotazioni trovate nella query.

IncludeNavigations(IncludeSpecification, Type, Expression, Boolean)

Include una proprietà di spostamento specifica richiesta nella query LINQ.

IncludeNavigations(QueryModel, IReadOnlyCollection<IncludeSpecification>)

Include i dati correlati richiesti nella query LINQ.

IncludeNavigations(QueryModel)

Include i dati correlati richiesti nella query LINQ.

InterceptExceptions()

Esegue la query e registra eventuali eccezioni che si verificano.

IntroduceTransparentScope(IQuerySource, QueryModel, Int32, Type)

Questa API supporta l'infrastruttura Entity Framework Core e non deve essere usata direttamente dal codice. Questa API può cambiare o essere rimossa nelle versioni future.

IsPropertyMethod(MethodInfo)

Determina se un MethodInfo oggetto fa riferimento al Property<TProperty>(Object, String) metodo.

OnBeforeNavigationRewrite(QueryModel)

Pre-elabora il modello di query prima di riscriverne gli spostamenti.

OptimizeQueryModel(QueryModel, Boolean)

Applica ottimizzazioni alla query.

OptimizeQueryModel(QueryModel)

Applica ottimizzazioni alla query.

RemoveOrderings(QueryModel)

Rimuove gli ordini per un determinato modello di query.

ReplaceClauseReferences(Expression, IQuerySource, Boolean)

Converte un'espressione di modello di query re-linq in un'espressione di query compilata.

RewriteProjectedCollectionNavigationsToIncludes(QueryModel)
Obsoleti.

Riscrive le proiezioni di spostamento della raccolta in modo che possano essere gestite dalla pipeline Include.

ShouldApplyDefiningQuery(IEntityType, IQuerySource)

Determinare se è necessario applicare una query di definizione quando si esegue una query sul tipo di entità di destinazione.

SingleResultToSequence(QueryModel, Type)

Converte i risultati della query da un singolo risultato a una serie di risultati.

TrackEntitiesInResults<TResult>(QueryModel)

Applica il comportamento di rilevamento alla query.

VisitAdditionalFromClause(AdditionalFromClause, QueryModel, Int32)

Visita Remotion.Linq.Clauses.AdditionalFromClause i nodi.

VisitGroupJoinClause(GroupJoinClause, QueryModel, Int32)

Visite Remotion.Linq.Clauses.GroupJoinClause ai nodi

VisitJoinClause(JoinClause, QueryModel, Int32)

Visita Remotion.Linq.Clauses.JoinClause i nodi.

VisitMainFromClause(MainFromClause, QueryModel)

Visita il Remotion.Linq.Clauses.MainFromClause nodo.

VisitOrdering(Ordering, QueryModel, OrderByClause, Int32)

Visita Remotion.Linq.Clauses.Ordering i nodi.

VisitQueryModel(QueryModel)

Visita il nodo radice Remotion.Linq.QueryModel .

VisitResultOperator(ResultOperatorBase, QueryModel, Int32)

Visita Remotion.Linq.Clauses.ResultOperatorBase i nodi.

VisitSelectClause(SelectClause, QueryModel)

Visita Remotion.Linq.Clauses.SelectClause i nodi.

VisitWhereClause(WhereClause, QueryModel, Int32)

Visita Remotion.Linq.Clauses.WhereClause i nodi.

Si applica a