Freigeben über


EntityQueryModelVisitor Klasse

Definition

Der Hauptbesucher, der eine auszuführende Abfrage verarbeitet.

Dieser Typ wird in der Regel von Datenbankanbietern (und anderen Erweiterungen) verwendet. Es wird im Allgemeinen nicht im Anwendungscode verwendet.

public abstract class EntityQueryModelVisitor : Remotion.Linq.QueryModelVisitorBase
type EntityQueryModelVisitor = class
    inherit QueryModelVisitorBase
Public MustInherit Class EntityQueryModelVisitor
Inherits QueryModelVisitorBase
Vererbung
Remotion.Linq.QueryModelVisitorBase
EntityQueryModelVisitor
Abgeleitet

Konstruktoren

EntityQueryModelVisitor(EntityQueryModelVisitorDependencies, QueryCompilationContext)

Initialisiert eine neue Instanz der EntityQueryModelVisitor-Klasse.

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

Initialisiert eine neue Instanz der EntityQueryModelVisitor-Klasse.

Felder

QueryContextParameter

Ausdruck, um auf den QueryContext Parameter für eine Abfrage zu verweisen.

Eigenschaften

CurrentParameter

Ruft den Ausdruck für den aktuellen Parameter ab.

Expression

Ruft den Ausdruck ab, der diese Abfrage darstellt.

LinqOperatorProvider

Ruft die ab, die Microsoft.EntityFrameworkCore.Query.Internal.ILinqOperatorProvider für diese Abfrage verwendet wird.

QueryCompilationContext

Ruft die ab, die QueryCompilationContext für diese Abfrage verwendet wird.

SelectAsyncMethod

Die _SelectAsync-Methodeninformationen.

Methoden

AddOrUpdateMapping(IQuerySource, Expression)

Fügt den Ausdruck hinzu, der einer Abfragequelle zugeordnet ist, oder aktualisiert ihn.

BindMemberExpression(MemberExpression, Action<IProperty,IQuerySource>)

Bindet einen Memberausdruck.

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

Bindet einen Memberausdruck.

BindMemberToValueBuffer(MemberExpression, Expression)

Bindet einen Memberzugriff an einen Wertpufferzugriff.

BindMethodCallExpression(MethodCallExpression, Action<IProperty,IQuerySource>)

Bindet einen Methodenaufrufausdruck.

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

Bindet einen Methodenaufrufausdruck.

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

Bindet einen Methodenaufrufausdruck.

BindMethodCallToEntity(MethodCallExpression, MethodCallExpression)

Bindet einen Methodenaufruf an einen CLR- oder Schatteneigenschaftenzugriff.

BindMethodCallToValueBuffer(MethodCallExpression, Expression)

Bindet einen Methodenaufruf an einen Wertpufferzugriff.

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

Bindet einen Navigationspfadeigenschaftenausdruck.

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

Bindet einen Navigationspfadeigenschaftenausdruck.

BindReadValueMethod(Type, Expression, Int32)

Bindet einen Wertpufferlesevorgang.

BindReadValueMethod(Type, Expression, Int32, IProperty)

Bindet einen Wertpufferlesevorgang.

CallCreateTransparentIdentifier(Type, Expression, Expression)

Diese API unterstützt die Entity Framework Core-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen. Diese API kann sich ändern oder in zukünftigen Releases entfernt werden.

CanOptimizeCorrelatedCollections()

Bestimmt, ob korrelierte Sammlungen (falls vorhanden) optimiert werden können.

CompileAdditionalFromClauseExpression(AdditionalFromClause, QueryModel)

Kompiliert Remotion.Linq.Clauses.AdditionalFromClause Knoten.

CompileGroupJoinInnerSequenceExpression(GroupJoinClause, QueryModel)

Kompiliert Remotion.Linq.Clauses.GroupJoinClause Knoten.

CompileJoinClauseInnerSequenceExpression(JoinClause, QueryModel)

Kompiliert Remotion.Linq.Clauses.JoinClause Knoten.

CompileMainFromClauseExpression(MainFromClause, QueryModel)

Kompiliert den Remotion.Linq.Clauses.MainFromClause Knoten.

CreateAsyncQueryExecutor<TResult>(QueryModel)

Erstellt eine Aktion zum asynchronen Ausführen dieser Abfrage.

CreateExecutorLambda<TResults>()

Erstellt eine Aktion zum Ausführen dieser Abfrage.

CreatePropertyExpression(Expression, IProperty)

Erstellt einen Ausdruck, um auf die angegebene Eigenschaft für eine bestimmte Entität zuzugreifen.

CreateQueryExecutor<TResult>(QueryModel)

Erstellt eine Aktion zum Ausführen dieser Abfrage.

CreateTransparentIdentifierType(Type, Type)

Diese API unterstützt die Entity Framework Core-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen. Diese API kann sich ändern oder in zukünftigen Releases entfernt werden.

ExtractQueryAnnotations(QueryModel)

Füllt basierend QueryAnnotations auf Anmerkungen in der Abfrage auf.

IncludeNavigations(IncludeSpecification, Type, Expression, Boolean)

Enthält eine bestimmte Navigationseigenschaft, die in der LINQ-Abfrage angefordert wird.

IncludeNavigations(QueryModel)

Enthält verwandte Daten, die in der LINQ-Abfrage angefordert wurden.

IncludeNavigations(QueryModel, IReadOnlyCollection<IncludeSpecification>)

Enthält verwandte Daten, die in der LINQ-Abfrage angefordert wurden.

InterceptExceptions()

Führt die Abfrage aus und protokolliert alle auftretenden Ausnahmen.

IntroduceTransparentScope(IQuerySource, QueryModel, Int32, Type)

Diese API unterstützt die Entity Framework Core-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen. Diese API kann sich ändern oder in zukünftigen Releases entfernt werden.

IsPropertyMethod(MethodInfo)

Bestimmt, ob ein MethodInfo auf die Property<TProperty>(Object, String) -Methode verweist.

OnBeforeNavigationRewrite(QueryModel)

Verarbeitet das Abfragemodell vor dem Umschreiben der Navigationen.

OptimizeQueryModel(QueryModel)

Wendet Optimierungen auf die Abfrage an.

OptimizeQueryModel(QueryModel, Boolean)

Wendet Optimierungen auf die Abfrage an.

RemoveOrderings(QueryModel)

Entfernt Reihenfolgen für ein bestimmtes Abfragemodell.

ReplaceClauseReferences(Expression, IQuerySource, Boolean)

Übersetzt einen re-linq-Abfragemodellausdruck in einen kompilierten Abfrageausdruck.

RewriteProjectedCollectionNavigationsToIncludes(QueryModel)
Veraltet..

Schreibt Sammlungsnavigationsprojektionen neu, sodass sie von der Include-Pipeline verarbeitet werden können.

ShouldApplyDefiningQuery(IEntityType, IQuerySource)

Bestimmen Sie, ob beim Abfragen des Zielentitätstyps eine definierende Abfrage angewendet werden soll.

SingleResultToSequence(QueryModel, Type)

Konvertiert die Ergebnisse der Abfrage von einem einzelnen Ergebnis in eine Reihe von Ergebnissen.

TrackEntitiesInResults<TResult>(QueryModel)

Wendet das Nachverfolgungsverhalten auf die Abfrage an.

VisitAdditionalFromClause(AdditionalFromClause, QueryModel, Int32)

Besucht Remotion.Linq.Clauses.AdditionalFromClause Knoten.

VisitGroupJoinClause(GroupJoinClause, QueryModel, Int32)

Besucht Remotion.Linq.Clauses.GroupJoinClause Knoten

VisitJoinClause(JoinClause, QueryModel, Int32)

Besucht Remotion.Linq.Clauses.JoinClause Knoten.

VisitMainFromClause(MainFromClause, QueryModel)

Besucht den Remotion.Linq.Clauses.MainFromClause Knoten.

VisitOrdering(Ordering, QueryModel, OrderByClause, Int32)

Besucht Remotion.Linq.Clauses.Ordering Knoten.

VisitQueryModel(QueryModel)

Besucht den Stammknoten Remotion.Linq.QueryModel .

VisitResultOperator(ResultOperatorBase, QueryModel, Int32)

Besucht Remotion.Linq.Clauses.ResultOperatorBase Knoten.

VisitSelectClause(SelectClause, QueryModel)

Besucht Remotion.Linq.Clauses.SelectClause Knoten.

VisitWhereClause(WhereClause, QueryModel, Int32)

Besucht Remotion.Linq.Clauses.WhereClause Knoten.

Gilt für: