Sdílet prostřednictvím


QueryCompilationContext Třída

Definice

Primární datová struktura představující stav/komponenty použité při kompilaci dotazu.

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

public class QueryCompilationContext
type QueryCompilationContext = class
Public Class QueryCompilationContext
Dědičnost
QueryCompilationContext
Odvozené

Poznámky

Další informace a příklady najdete v tématech Implementace poskytovatelů a rozšíření databází a Jak fungují dotazy EF Core .

Konstruktory

QueryCompilationContext(IModel, ILogger, IEntityQueryModelVisitorFactory, IRequiresMaterializationExpressionVisitorFactory, ILinqOperatorProvider, Type, Boolean)

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

QueryCompilationContext(QueryCompilationContextDependencies, Boolean)

Vytvoří novou instanci třídy QueryCompilationContext.

QueryCompilationContext(QueryCompilationContextDependencies, ILinqOperatorProvider, Boolean)

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

Pole

NotTranslatedExpression

Výraz představující nepřekládaný výraz ve stromu dotazu během fáze překladu

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

QueryContextParameter

ParameterExpression představující QueryContext parametr ve výrazu dotazu.

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

QueryParameterPrefix

Předpona všech parametrů dotazu vygenerovaných během extrakce parametrů v kanálu dotazu.

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

Vlastnosti

ContextOptions

ContextOptions, které se mají použít při kompilaci dotazu.

ContextType

Typ CLR odvozeného DbContextu, který se má použít při kompilaci dotazu.

Dependencies

Závislosti pro tuto službu

IgnoreAutoIncludes

Hodnota označující, jestli se v tomto dotazu ignorují navigace načtené do nedočkavým zatížením.

IgnoreQueryFilters

Hodnota označující, jestli jsou filtry dotazů v tomto dotazu ignorovány.

IsAsync

Hodnota označující, jestli se jedná o asynchronní dotaz.

IsAsyncQuery

Získejte hodnotu označující, jestli je zpracovávaný dotaz asynchronní.

IsBuffering

Hodnota označující, jestli podkladový dotaz na server musí všechna data předem ukládat do vyrovnávací paměti.

IsIncludeQuery

Dotaz obsahuje alespoň jednu operaci Zahrnutí.

IsQueryBufferRequired

Získá hodnotu určující, zda tento dotaz vyžaduje vyrovnávací paměť dotazu.

IsTracking
Zastaralé..

Hodnota označující, jestli se jedná o sledovací dotaz.

IsTrackingQuery

Získá hodnotu označující, zda se jedná o sledovací dotaz.

LinqOperatorProvider

Získá zprostředkovatele operátoru LINQ.

Logger

Protokolovací nástroj dotazů, který se má použít při kompilaci dotazu.

Model

Model, který se má použít při kompilaci dotazu.

QueryAnnotations

Získá poznámky dotazu.

QuerySourceMapping

Získá mapování zdroje dotazu.

QueryTrackingBehavior

Hodnota označující QueryTrackingBehavior dotaz.

Tags

Sada značek použitých pro tento dotaz

TrackQueryResults

Získá hodnotu označující výchozí nakonfigurované chování sledování.

Metody

AddAnnotations(IEnumerable<IQueryAnnotation>)

Přidá poznámky dotazu do existujícího seznamu.

AddOrUpdateMapping(IQuerySource, Expression)

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

AddOrUpdateMapping(IQuerySource, IEntityType)

Získá typ entity mapovaný na daný zdroj dotazu.

AddQuerySourceRequiringMaterialization(IQuerySource)

Přidejte zdroj dotazu do sady zdrojů dotazů, které vyžadují materializaci.

AddTag(String)

Přidá značku do Tags.

AddTrackableInclude(IQuerySource, IReadOnlyList<INavigation>)

Přidá sledovatelné zahrnutí.

CloneAnnotations(QuerySourceMapping, QueryModel)

Vytvoří klonované poznámky, jejichž cílem je nový model QueryModel.

CreateQueryExecutor<TResult>(Expression)

Vytvoří func exekutoru dotazu, který poskytuje výsledky pro tento dotaz.

CreateQueryModelVisitor()

Vytvoří návštěvníka modelu dotazu.

CreateQueryModelVisitor(EntityQueryModelVisitor)

Vytvoří návštěvníka modelu dotazu.

DetermineQueryBufferRequirement(QueryModel)

Zjistěte, jestli dotaz vyžaduje vyrovnávací paměť dotazu.

FindEntityType(IQuerySource)

Získá typ entity mapovaný na daný zdroj dotazu.

FindQuerySourcesRequiringMaterialization(EntityQueryModelVisitor, QueryModel)

Určuje všechny zdroje dotazů, které vyžadují materializaci.

GetTrackableIncludes(IQuerySource)

Získá všechny sledovatelné zahrnutí pro daný zdroj dotazu.

QuerySourceRequiresMaterialization(IQuerySource)

Určete, jestli zdroj dotazu vyžaduje materializaci.

RegisterCorrelatedSubqueryMetadata(MainFromClause, Boolean, INavigation, INavigation, IQuerySource)

Registruje mapování mezi korelovanými modely dotazů kolekce a metadaty potřebnými k jejich zpracování.

RegisterRuntimeParameter(String, LambdaExpression)

Registruje parametr modulu runtime, který se přidává v určitém okamžiku během fáze kompilace. Je nutné zadat lambda, která extrahuje hodnotu parametru z QueryContext při každém spuštění dotazu.

TryGetCorrelatedSubqueryMetadata(MainFromClause, CorrelatedSubqueryMetadata)

Vyhledá mapování mezi korelovanými modely dotazů kolekce a metadaty potřebnými k jejich zpracování.

UpdateMapping(QuerySourceMapping)

Aktualizace mapování zdrojů dotazů na nové zdroje dotazů

Platí pro