Jazyk

EntityQueryModelVisitor Třída

Definice

Základní návštěvník, který zpracovává dotaz, který se má spustit.

Tento typ obvykle používají poskytovatelé databáze (a další rozšíření). Obvykle se nepoužívá v kódu aplikace.

public abstract class EntityQueryModelVisitor : Remotion.Linq.QueryModelVisitorBase
type EntityQueryModelVisitor = class
    inherit QueryModelVisitorBase
Public MustInherit Class EntityQueryModelVisitor
Inherits QueryModelVisitorBase
Dědičnost
Remotion.Linq.QueryModelVisitorBase
EntityQueryModelVisitor
Odvozené

Konstruktory

Název Description
EntityQueryModelVisitor(EntityQueryModelVisitorDependencies, QueryCompilationContext)

Inicializuje novou instanci EntityQueryModelVisitor třídy.

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

Inicializuje novou instanci EntityQueryModelVisitor třídy.

Pole

Název Description
QueryContextParameter

Výraz, který odkazuje na QueryContext parametr dotazu.

Vlastnosti

Název Description
CurrentParameter

Získá výraz pro aktuální parametr.

Expression

Získá výraz, který představuje tento dotaz.

LinqOperatorProvider

Získá použitou Microsoft.EntityFrameworkCore.Query.Internal.ILinqOperatorProvider pro tento dotaz.

QueryCompilationContext

Získá použitou QueryCompilationContext pro tento dotaz.

SelectAsyncMethod

Informace o metodě _SelectAsync.

Metody

Název Description
AddOrUpdateMapping(IQuerySource, Expression)

Přidá nebo aktualizuje výraz namapovaný na zdroj dotazu.

BindMemberExpression(MemberExpression, Action<IProperty,IQuerySource>)

Vytvoří vazbu výrazu člena.

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

Vytvoří vazbu výrazu člena.

BindMemberToValueBuffer(MemberExpression, Expression)

Vytvoří vazbu přístupu člena k přístupu k vyrovnávací paměti hodnoty.

BindMethodCallExpression(MethodCallExpression, Action<IProperty,IQuerySource>)

Vytvoří vazbu výrazu volání metody.

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

Vytvoří vazbu výrazu volání metody.

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

Vytvoří vazbu výrazu volání metody.

BindMethodCallToEntity(MethodCallExpression, MethodCallExpression)

Vytvoří vazbu volání metody na přístup k CLR nebo stínové vlastnosti.

BindMethodCallToValueBuffer(MethodCallExpression, Expression)

Vytvoří vazbu volání metody na přístup k vyrovnávací paměti hodnoty.

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

Vytvoří vazbu výrazu vlastnosti navigační cesty.

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

Vytvoří vazbu výrazu vlastnosti navigační cesty.

BindReadValueMethod(Type, Expression, Int32, IProperty)

Vytvoří vazbu na čtení vyrovnávací paměti hodnoty.

BindReadValueMethod(Type, Expression, Int32)

Vytvoří vazbu na čtení vyrovnávací paměti hodnoty.

CallCreateTransparentIdentifier(Type, Expression, Expression)

Toto rozhraní API podporuje infrastrukturu Entity Framework Core a není určeno k použití přímo z kódu. Toto rozhraní API se může v budoucích verzích změnit nebo odebrat.

CanOptimizeCorrelatedCollections()

Určuje, jestli je možné optimalizovat korelované kolekce (pokud nějaké).

CompileAdditionalFromClauseExpression(AdditionalFromClause, QueryModel)

Zkompiluje Remotion.Linq.Clauses.AdditionalFromClause uzly.

CompileGroupJoinInnerSequenceExpression(GroupJoinClause, QueryModel)

Zkompiluje Remotion.Linq.Clauses.GroupJoinClause uzly.

CompileJoinClauseInnerSequenceExpression(JoinClause, QueryModel)

Zkompiluje Remotion.Linq.Clauses.JoinClause uzly.

CompileMainFromClauseExpression(MainFromClause, QueryModel)

Zkompiluje Remotion.Linq.Clauses.MainFromClause uzel.

CreateAsyncQueryExecutor<TResult>(QueryModel)

Vytvoří akci pro asynchronní provedení tohoto dotazu.

CreateExecutorLambda<TResults>()

Vytvoří akci pro provedení tohoto dotazu.

CreatePropertyExpression(Expression, IProperty)

Vytvoří výraz pro přístup k dané vlastnosti dané entity.

CreateQueryExecutor<TResult>(QueryModel)

Vytvoří akci pro provedení tohoto dotazu.

CreateTransparentIdentifierType(Type, Type)

Toto rozhraní API podporuje infrastrukturu Entity Framework Core a není určeno k použití přímo z kódu. Toto rozhraní API se může v budoucích verzích změnit nebo odebrat.

ExtractQueryAnnotations(QueryModel)

Naplní QueryAnnotations na základě poznámek nalezených v dotazu.

IncludeNavigations(IncludeSpecification, Type, Expression, Boolean)

Zahrnuje konkrétní vlastnost navigace požadovanou v dotazu LINQ.

IncludeNavigations(QueryModel, IReadOnlyCollection<IncludeSpecification>)

Zahrnuje související data požadovaná v dotazu LINQ.

IncludeNavigations(QueryModel)

Zahrnuje související data požadovaná v dotazu LINQ.

InterceptExceptions()

Spustí dotaz a zaprotokoluje všechny výjimky, ke kterým dochází.

IntroduceTransparentScope(IQuerySource, QueryModel, Int32, Type)

Toto rozhraní API podporuje infrastrukturu Entity Framework Core a není určeno k použití přímo z kódu. Toto rozhraní API se může v budoucích verzích změnit nebo odebrat.

IsPropertyMethod(MethodInfo)

Určuje, zda MethodInfo je odkaz na metodu Property<TProperty>(Object, String) .

OnBeforeNavigationRewrite(QueryModel)

Předepisujeme model dotazu před přepsáním jeho navigace.

OptimizeQueryModel(QueryModel, Boolean)

Použije na dotaz optimalizace.

OptimizeQueryModel(QueryModel)

Použije na dotaz optimalizace.

RemoveOrderings(QueryModel)

Odebere řazení pro daný model dotazu.

ReplaceClauseReferences(Expression, IQuerySource, Boolean)

Přeloží výraz modelu dotazu re-linq na zkompilovaný výraz dotazu.

RewriteProjectedCollectionNavigationsToIncludes(QueryModel)
Zastaralé.

Přepíše projekce navigace v kolekci, aby je mohl zpracovat kanál Include.

ShouldApplyDefiningQuery(IEntityType, IQuerySource)

Určete, jestli se má při dotazování na cílový typ entity použít definující dotaz.

SingleResultToSequence(QueryModel, Type)

Převede výsledky dotazu z jednoho výsledku na řadu výsledků.

TrackEntitiesInResults<TResult>(QueryModel)

Použije na dotaz sledování chování.

VisitAdditionalFromClause(AdditionalFromClause, QueryModel, Int32)

Navštíví Remotion.Linq.Clauses.AdditionalFromClause uzly.

VisitGroupJoinClause(GroupJoinClause, QueryModel, Int32)

Návštěvy Remotion.Linq.Clauses.GroupJoinClause uzlů

VisitJoinClause(JoinClause, QueryModel, Int32)

Navštíví Remotion.Linq.Clauses.JoinClause uzly.

VisitMainFromClause(MainFromClause, QueryModel)

Remotion.Linq.Clauses.MainFromClause Navštíví uzel.

VisitOrdering(Ordering, QueryModel, OrderByClause, Int32)

Navštíví Remotion.Linq.Clauses.Ordering uzly.

VisitQueryModel(QueryModel)

Navštíví kořenový Remotion.Linq.QueryModel uzel.

VisitResultOperator(ResultOperatorBase, QueryModel, Int32)

Navštíví Remotion.Linq.Clauses.ResultOperatorBase uzly.

VisitSelectClause(SelectClause, QueryModel)

Navštíví Remotion.Linq.Clauses.SelectClause uzly.

VisitWhereClause(WhereClause, QueryModel, Int32)

Navštíví Remotion.Linq.Clauses.WhereClause uzly.

Platí pro