Jazyk

QueryCompilationContext Třída

Definice

Primární datová struktura představující stav/komponenty používané při kompilaci dotazů.

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

public class QueryCompilationContext
[System.Runtime.CompilerServices.Nullable(0)]
public class QueryCompilationContext
type QueryCompilationContext = class
[<System.Runtime.CompilerServices.Nullable(0)>]
type QueryCompilationContext = class
Public Class QueryCompilationContext
Dědičnost
QueryCompilationContext
Odvozené
Atributy

Poznámky

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

Konstruktory

Název Description
QueryCompilationContext(IModel, ILogger, IEntityQueryModelVisitorFactory, IRequiresMaterializationExpressionVisitorFactory, ILinqOperatorProvider, Type, Boolean)

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.

QueryCompilationContext(QueryCompilationContextDependencies, Boolean, Boolean, IReadOnlySet<String>)

Vytvoří novou instanci QueryCompilationContext třídy.

QueryCompilationContext(QueryCompilationContextDependencies, Boolean, Boolean)

Vytvoří novou instanci QueryCompilationContext třídy.

QueryCompilationContext(QueryCompilationContextDependencies, Boolean)

Vytvoří novou instanci QueryCompilationContext třídy.

QueryCompilationContext(QueryCompilationContextDependencies, ILinqOperatorProvider, Boolean)

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.

Pole

Název Description
NotTranslatedExpression

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

Tuto vlastnost obvykle používají poskytovatelé databáze (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áze (a další rozšíření). Obvykle se nepoužívá v kódu aplikace.

QueryParameterPrefix

Předpona pro všechny parametry dotazu vygenerované během extrakce parametrů v kanálu dotazu.

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

Vlastnosti

Název Description
ContextOptions

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

ContextType

Typ CLR odvozeného DbContext, 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í dychtivá navigace načtená.

IgnoredQueryFilters

Kolekce ignorovaných filtrů dotazů.

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íská hodnotu označující, jestli je dotaz, který se zpracovává, asynchronní.

IsBuffering

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

IsIncludeQuery

Dotaz má aspoň jednu operaci include.

IsPrecompiling

Určuje, jestli je dotaz předkompilován.

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 určující, zda se jedná o sledovací dotaz.

LinqOperatorProvider

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

Logger

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

Model

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

NonNullableReferenceTypeParameters

Názvy parametrů, které mají odkazové typy, které nemají hodnotu null.

ParametersToConstantize

Názvy parametrů, pro které Constant<T>(T) byly použity. Tyto parametry se později transformují na konstanty.

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

ParametersToNotConstantize

Názvy parametrů, pro které Parameter<T>(T) byly použity. Tyto parametry se později nepřeměňují na konstanty, i když je parametrizovaná konstanta kolekce nakonfigurovaná jako výchozí.

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

QueryAnnotations

Získá poznámky k dotazu.

QuerySourceMapping

Získá mapování zdroje dotazu.

QueryTrackingBehavior

Hodnota označující QueryTrackingBehavior dotaz.

SupportsPrecompiledQuery

Hodnota označující, jestli poskytovatel podporuje předkompilovaný dotaz. Výchozí hodnota je false. Poskytovatelé, kteří tuto funkci podporují, by se měli přihlásit nastavením této hodnoty na truehodnotu .

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

Název Description
AddAnnotations(IEnumerable<IQueryAnnotation>)

Přidá poznámky k 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ů vyžadující materializaci.

AddTag(String)

Přidá značku do Tagssouboru .

AddTrackableInclude(IQuerySource, IReadOnlyList<INavigation>)

Přidá sledované zahrnutí.

CloneAnnotations(QuerySourceMapping, QueryModel)

Vytvoří klonované poznámky, které cílí na nový model QueryModel.

CreateQueryExecutor<TResult>(Expression)

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

CreateQueryExecutorExpression<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)

Určete, 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 sledované zahrnutí pro daný zdroj dotazu.

QuerySourceRequiresMaterialization(IQuerySource)

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

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

Zaregistruje mapování mezi korelovanými modely dotazů kolekce a metadaty potřebnými ke zpracování.

RegisterRuntimeParameter(String, LambdaExpression)

Zaregistruje parametr modulu runtime, který se v určitém okamžiku přidává během fáze kompilace. Musí se 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 ke zpracování.

UpdateMapping(QuerySourceMapping)

Aktualizuje mapování zdrojů dotazů na nové zdroje dotazů.

Platí pro