DefaultQuerySqlGenerator Class

Definition

The default query SQL generator.

public class DefaultQuerySqlGenerator : Remotion.Linq.Parsing.ThrowingExpressionVisitor, Microsoft.EntityFrameworkCore.Query.Sql.IQuerySqlGenerator, Microsoft.EntityFrameworkCore.Query.Sql.ISqlExpressionVisitor
type DefaultQuerySqlGenerator = class
    inherit ThrowingExpressionVisitor
    interface ISqlExpressionVisitor
    interface IQuerySqlGenerator
Public Class DefaultQuerySqlGenerator
Inherits ThrowingExpressionVisitor
Implements IQuerySqlGenerator, ISqlExpressionVisitor
Inheritance
Remotion.Linq.Parsing.ThrowingExpressionVisitor
DefaultQuerySqlGenerator
Implements

Constructors

DefaultQuerySqlGenerator(IRelationalCommandBuilderFactory, ISqlGenerationHelper, IParameterNameGeneratorFactory, IRelationalTypeMapper, SelectExpression)

Creates a new instance of DefaultQuerySqlGenerator.

DefaultQuerySqlGenerator(QuerySqlGeneratorDependencies, SelectExpression)

Creates a new instance of DefaultQuerySqlGenerator.

Properties

AliasSeparator

The default alias separator.

ConcatOperator

The default string concatenation operator SQL.

Dependencies

Parameter object containing service dependencies.

IsCacheable

Gets a value indicating whether this SQL query is cacheable.

ParameterValues

Gets the parameter values.

RequiresRuntimeProjectionRemapping

Whether or not the generated SQL could have out-of-order projection columns.

SelectExpression

Gets the select expression.

SingleLineCommentToken

The default single line comment prefix.

Sql

The generated SQL.

SqlGenerator

Gets the SQL generation helper.

TypedFalseLiteral

The default false literal SQL.

TypedTrueLiteral

The default true literal SQL.

Methods

ApplyExplicitCastToBoolInProjectionOptimization(Expression)

This API supports the Entity Framework Core infrastructure and is not intended to be used directly from your code. This API may change or be removed in future releases.

CreateUnhandledItemException<T>(T, String)

Creates unhandled item exception.

CreateValueBufferFactory(IRelationalValueBufferFactoryFactory, DbDataReader)

Creates a relational value buffer factory.

ExtractNonNullExpressionValues(IReadOnlyList<Expression>)
Obsolete.

Extracts the non null expression values from a list of expressions.

GenerateBinaryOperator(ExpressionType)
Obsolete.

Generates SQL for a given binary operation type.

GenerateFromSql(String, Expression, IReadOnlyDictionary<String,Object>)

Generate SQL corresponding to a FromSql query.

GenerateFunctionCall(String, IReadOnlyList<Expression>, String)
Obsolete.

Generates a SQL function call.

GenerateHaving(Expression)

Visit the predicate in SQL HAVING clause

GenerateIn(InExpression, Boolean)

Generates SQL for an InExpression.

GenerateIsNotNull(IsNullExpression)

Visits an IsNotNullExpression.

GenerateLimitOffset(SelectExpression)

Generates the LIMIT OFFSET part of the SELECT statement,

GenerateList(IReadOnlyList<Expression>, Action<IRelationalCommandBuilder>)

Performs generation over a list of items by visiting each item.

GenerateList(IReadOnlyList<Expression>, Action<IRelationalCommandBuilder>, IReadOnlyList<RelationalTypeMapping>)

Performs generation over a list of items by visiting each item.

GenerateList<T>(IReadOnlyList<T>, Action<T>, Action<IRelationalCommandBuilder>)

Perform generation over a list of items using a provided generation action and optional join action.

GenerateList<T>(IReadOnlyList<T>, Action<T>, Action<IRelationalCommandBuilder>, IReadOnlyList<RelationalTypeMapping>)

Perform generation over a list of items using a provided generation action and optional join action.

GenerateNotIn(InExpression)
Obsolete.

Visit a negated InExpression.

GenerateOperator(Expression)

Generates an SQL operator for a given expression.

GenerateOrderBy(IReadOnlyList<Ordering>)

Generates the ORDER BY SQL.

GenerateOrdering(Ordering)

Generates a single ordering in an SQL ORDER BY clause.

GeneratePredicate(Expression)

Visit the predicate in SQL WHERE clause

GenerateProjection(Expression)

Visit a single projection in SQL SELECT clause

GeneratePseudoFromClause()

Generates a pseudo FROM clause. Required by some providers when a query has no actual FROM clause.

GenerateSql(IReadOnlyDictionary<String,Object>)

Generates SQL for the given parameter values.

GenerateTagsHeaderComment()

Generates the tags header comment.

GenerateTop(SelectExpression)

Generates the TOP part of the SELECT statement,

GetTypeMaterializationInfos()

Information about the types being projected by this query.

InferTypeMappingFromColumn(Expression)

Infers a type mapping from a column expression.

ProcessInExpressionValues(IEnumerable<Expression>)
Obsolete.

Process the InExpression values.

TryGenerateBinaryOperator(ExpressionType, String)
Obsolete.

Attempts to generate binary operator for a given expression type.

VisitAlias(AliasExpression)

Visits an AliasExpression.

VisitBinary(BinaryExpression)

Visit a BinaryExpression.

VisitCase(CaseExpression)

Visits a case expression.

VisitColumn(ColumnExpression)

Visits a ColumnExpression.

VisitColumnReference(ColumnReferenceExpression)

Visits a ColumnReferenceExpression.

VisitConditional(ConditionalExpression)

Visit a ConditionalExpression.

VisitConstant(ConstantExpression)

Visits a ConstantExpression.

VisitCount(CountExpression)

Visit a CountExpression

VisitCrossJoin(CrossJoinExpression)

Visit a CrossJoin expression.

VisitCrossJoinLateral(CrossJoinLateralExpression)

Visit a CrossJoinLateralExpression expression.

VisitExists(ExistsExpression)

Visit an ExistsExpression.

VisitExplicitCast(ExplicitCastExpression)

Visit a SQL ExplicitCastExpression.

VisitFromSql(FromSqlExpression)

Visit a FromSqlExpression.

VisitIn(InExpression)

Visit an InExpression.

VisitInnerJoin(InnerJoinExpression)

Visit an InnerJoinExpression.

VisitIsNotNull(IsNullExpression)

Visits an IsNotNullExpression.

VisitIsNull(IsNullExpression)

Visits an IsNullExpression.

VisitLateralJoin(LateralJoinExpression)

Visit a LateralJoin expression.

VisitLeftOuterJoin(LeftOuterJoinExpression)

Visit an LeftOuterJoinExpression.

VisitLike(LikeExpression)

Visit a LikeExpression.

VisitMax(MaxExpression)

Visit a MaxExpression.

VisitMin(MinExpression)

Visit a MinExpression.

VisitNotIn(InExpression)

Visit a negated InExpression.

VisitParameter(ParameterExpression)

Visits a ParameterExpression.

VisitProjection(IReadOnlyList<Expression>)

Visit the projection.

VisitPropertyParameter(PropertyParameterExpression)

Visits a PropertyParameterExpression.

VisitSelect(SelectExpression)

Visit a top-level SelectExpression.

VisitSqlFragment(SqlFragmentExpression)

Visit a SqlFragmentExpression.

VisitSqlFunction(SqlFunctionExpression)

Visits a SqlFunctionExpression.

VisitStringCompare(StringCompareExpression)

Visit a StringCompareExpression.

VisitSum(SumExpression)

Visit a SumExpression.

VisitTable(TableExpression)

Visit a TableExpression.

VisitUnary(UnaryExpression)

Visits a UnaryExpression.

Applies to