Interface ISqlExpressionFactory
- Namespace
- Microsoft.EntityFrameworkCore.Query
- Assembly
- Microsoft.EntityFrameworkCore.Relational.dll
A factory for creating SqlExpression instances.
The service lifetime is Singleton. This means a single instance is used by many Microsoft.EntityFrameworkCore.DbContext instances. The implementation must be thread-safe. This service cannot depend on services registered as Scoped.
public interface ISqlExpressionFactory
Methods
Add(SqlExpression, SqlExpression, RelationalTypeMapping)
Creates a SqlBinaryExpression which represents an addition.
SqlBinaryExpression Add(SqlExpression left, SqlExpression right, RelationalTypeMapping typeMapping = null)
Parameters
left
SqlExpressionThe left operand.
right
SqlExpressionThe right operand.
typeMapping
RelationalTypeMappingA type mapping to be assigned to the created expression.
Returns
- SqlBinaryExpression
An expression representing a SQL addition.
And(SqlExpression, SqlExpression, RelationalTypeMapping)
Creates a SqlBinaryExpression which represents a bitwise AND operation.
SqlBinaryExpression And(SqlExpression left, SqlExpression right, RelationalTypeMapping typeMapping = null)
Parameters
left
SqlExpressionThe left operand.
right
SqlExpressionThe right operand.
typeMapping
RelationalTypeMappingA type mapping to be assigned to the created expression.
Returns
- SqlBinaryExpression
An expression representing a SQL bitwise AND operation.
AndAlso(SqlExpression, SqlExpression)
Creates a SqlBinaryExpression which represents a logical AND operation.
SqlBinaryExpression AndAlso(SqlExpression left, SqlExpression right)
Parameters
left
SqlExpressionThe left operand.
right
SqlExpressionThe right operand.
Returns
- SqlBinaryExpression
An expression representing a SQL AND operation.
ApplyDefaultTypeMapping(SqlExpression)
Applies default type mapping to given SqlExpression.
SqlExpression ApplyDefaultTypeMapping(SqlExpression sqlExpression)
Parameters
sqlExpression
SqlExpressionA SQL Expression to apply default type mapping.
Returns
- SqlExpression
A SQL expression with default type mapping applied.
ApplyTypeMapping(SqlExpression, RelationalTypeMapping)
Applies type mapping to the given SqlExpression.
SqlExpression ApplyTypeMapping(SqlExpression sqlExpression, RelationalTypeMapping typeMapping)
Parameters
sqlExpression
SqlExpressionA SQL expression to apply type mapping.
typeMapping
RelationalTypeMappingA type mapping to apply.
Returns
- SqlExpression
A SQL expression with given type mapping applied.
Case(SqlExpression, params CaseWhenClause[])
Creates a new CaseExpression which represent a CASE statement in a SQL tree.
[Obsolete("Use overload which takes IReadOnlyList instead of params")]
CaseExpression Case(SqlExpression operand, params CaseWhenClause[] whenClauses)
Parameters
operand
SqlExpressionAn expression to compare with Test in
whenClauses
.whenClauses
CaseWhenClause[]A list of CaseWhenClause to compare and get result from.
Returns
- CaseExpression
An expression representing a CASE statement in a SQL tree.
Case(SqlExpression, IReadOnlyList<CaseWhenClause>, SqlExpression)
Creates a new CaseExpression which represent a CASE statement in a SQL tree.
CaseExpression Case(SqlExpression operand, IReadOnlyList<CaseWhenClause> whenClauses, SqlExpression elseResult)
Parameters
operand
SqlExpressionAn expression to compare with Test in
whenClauses
.whenClauses
IReadOnlyList<CaseWhenClause>A list of CaseWhenClause to compare and get result from.
elseResult
SqlExpressionA value to return if no
whenClauses
matches, if any.
Returns
- CaseExpression
An expression representing a CASE statement in a SQL tree.
Case(IReadOnlyList<CaseWhenClause>, SqlExpression)
Creates a new CaseExpression which represent a CASE statement in a SQL tree.
CaseExpression Case(IReadOnlyList<CaseWhenClause> whenClauses, SqlExpression elseResult)
Parameters
whenClauses
IReadOnlyList<CaseWhenClause>A list of CaseWhenClause to evaluate condition and get result from.
elseResult
SqlExpressionA value to return if no
whenClauses
matches, if any.
Returns
- CaseExpression
An expression representing a CASE statement in a SQL tree.
Coalesce(SqlExpression, SqlExpression, RelationalTypeMapping)
Creates a SqlBinaryExpression which represents a bitwise OR operation.
SqlFunctionExpression Coalesce(SqlExpression left, SqlExpression right, RelationalTypeMapping typeMapping = null)
Parameters
left
SqlExpressionThe left operand.
right
SqlExpressionThe right operand.
typeMapping
RelationalTypeMappingA type mapping to be assigned to the created expression.
Returns
- SqlFunctionExpression
An expression representing a SQL bitwise OR operation.
Constant(object, RelationalTypeMapping)
Creates a new SqlConstantExpression which represents a constant in a SQL tree.
SqlConstantExpression Constant(object value, RelationalTypeMapping typeMapping = null)
Parameters
value
objectA value.
typeMapping
RelationalTypeMappingThe RelationalTypeMapping associated with the expression.
Returns
- SqlConstantExpression
An expression representing a LIKE in a SQL tree.
Convert(SqlExpression, Type, RelationalTypeMapping)
Creates a new SqlUnaryExpression which represent casting a SQL expression to different type.
SqlUnaryExpression Convert(SqlExpression operand, Type type, RelationalTypeMapping typeMapping = null)
Parameters
operand
SqlExpressionA SqlExpression to cast.
type
TypeThe return type of the expression after cast.
typeMapping
RelationalTypeMappingA relational type mapping to use for conversion.
Returns
- SqlUnaryExpression
An expression representing cast operation in a SQL tree.
Divide(SqlExpression, SqlExpression, RelationalTypeMapping)
Creates a SqlBinaryExpression which represents a division.
SqlBinaryExpression Divide(SqlExpression left, SqlExpression right, RelationalTypeMapping typeMapping = null)
Parameters
left
SqlExpressionThe left operand.
right
SqlExpressionThe right operand.
typeMapping
RelationalTypeMappingA type mapping to be assigned to the created expression.
Returns
- SqlBinaryExpression
An expression representing a SQL division.
Equal(SqlExpression, SqlExpression)
Creates a SqlBinaryExpression which represents an equality comparison.
SqlBinaryExpression Equal(SqlExpression left, SqlExpression right)
Parameters
left
SqlExpressionThe left operand.
right
SqlExpressionThe right operand.
Returns
- SqlBinaryExpression
An expression representing a SQL equality comparison.
Exists(SelectExpression, bool)
Creates a new ExistsExpression which represents an EXISTS operation in a SQL tree.
ExistsExpression Exists(SelectExpression subquery, bool negated)
Parameters
subquery
SelectExpressionA subquery to check existence of.
negated
boolA value indicating if the existence check is negated.
Returns
- ExistsExpression
An expression representing an EXISTS operation in a SQL tree.
FindMapping(Type)
Finds the type mapping for a given Type.
[Obsolete("Use IRelationalTypeMappingSource directly.")]
RelationalTypeMapping FindMapping(Type type)
Parameters
type
TypeThe CLR type.
Returns
- RelationalTypeMapping
The type mapping, or null if none was found.
Fragment(string)
Creates a new SqlFragmentExpression which represents a SQL token.
SqlFragmentExpression Fragment(string sql)
Parameters
sql
stringA string token to print in SQL tree.
Returns
- SqlFragmentExpression
An expression representing a SQL token.
Function(SqlExpression, string, IEnumerable<SqlExpression>, bool, bool, IEnumerable<bool>, Type, RelationalTypeMapping)
Creates a new SqlFunctionExpression which represents a function call in a SQL tree.
SqlFunctionExpression Function(SqlExpression instance, string name, IEnumerable<SqlExpression> arguments, bool nullable, bool instancePropagatesNullability, IEnumerable<bool> argumentsPropagateNullability, Type returnType, RelationalTypeMapping typeMapping = null)
Parameters
instance
SqlExpressionAn expression on which the function is applied.
name
stringThe name of the function.
arguments
IEnumerable<SqlExpression>The arguments of the function.
nullable
boolA bool value indicating whether this function can return null.
instancePropagatesNullability
boolA value indicating if instance propagates null to result.
argumentsPropagateNullability
IEnumerable<bool>A list of bool values indicating whether individual arguments propagate null to result.
returnType
TypeThe Type of the expression.
typeMapping
RelationalTypeMappingThe RelationalTypeMapping associated with the expression.
Returns
- SqlFunctionExpression
An expression representing a function call in a SQL tree.
Function(SqlExpression, string, IEnumerable<SqlExpression>, Type, RelationalTypeMapping)
Creates a new SqlFunctionExpression which represents a function call in a SQL tree.
[Obsolete("Use overload that explicitly specifies value for 'instancePropagatesNullability' and 'argumentsPropagateNullability' arguments.")]
SqlFunctionExpression Function(SqlExpression instance, string name, IEnumerable<SqlExpression> arguments, Type returnType, RelationalTypeMapping typeMapping = null)
Parameters
instance
SqlExpressionAn expression on which the function is applied.
name
stringThe name of the function.
arguments
IEnumerable<SqlExpression>The arguments of the function.
returnType
TypeThe Type of the expression.
typeMapping
RelationalTypeMappingThe RelationalTypeMapping associated with the expression.
Returns
- SqlFunctionExpression
An expression representing a function call in a SQL tree.
Function(SqlExpression, string, Type, RelationalTypeMapping)
Creates a new SqlFunctionExpression which represents a function call in a SQL tree.
[Obsolete("Use NiladicFunction method.")]
SqlFunctionExpression Function(SqlExpression instance, string name, Type returnType, RelationalTypeMapping typeMapping = null)
Parameters
instance
SqlExpressionAn expression on which the function is applied.
name
stringThe name of the function.
returnType
TypeThe Type of the expression.
typeMapping
RelationalTypeMappingThe RelationalTypeMapping associated with the expression.
Returns
- SqlFunctionExpression
An expression representing a function call in a SQL tree.
Function(string, IEnumerable<SqlExpression>, bool, IEnumerable<bool>, Type, RelationalTypeMapping)
Creates a new SqlFunctionExpression which represents a function call in a SQL tree.
SqlFunctionExpression Function(string name, IEnumerable<SqlExpression> arguments, bool nullable, IEnumerable<bool> argumentsPropagateNullability, Type returnType, RelationalTypeMapping typeMapping = null)
Parameters
name
stringThe name of the function.
arguments
IEnumerable<SqlExpression>The arguments of the function.
nullable
boolA bool value indicating whether this function can return null.
argumentsPropagateNullability
IEnumerable<bool>A list of bool values indicating whether individual arguments propagate null to result.
returnType
TypeThe Type of the expression.
typeMapping
RelationalTypeMappingThe RelationalTypeMapping associated with the expression.
Returns
- SqlFunctionExpression
An expression representing a function call in a SQL tree.
Function(string, IEnumerable<SqlExpression>, Type, RelationalTypeMapping)
Creates a new SqlFunctionExpression which represents a function call in a SQL tree.
[Obsolete("Use overload that explicitly specifies value for 'argumentsPropagateNullability' argument.")]
SqlFunctionExpression Function(string name, IEnumerable<SqlExpression> arguments, Type returnType, RelationalTypeMapping typeMapping = null)
Parameters
name
stringThe name of the function.
arguments
IEnumerable<SqlExpression>The arguments of the function.
returnType
TypeThe Type of the expression.
typeMapping
RelationalTypeMappingThe RelationalTypeMapping associated with the expression.
Returns
- SqlFunctionExpression
An expression representing a function call in a SQL tree.
Function(string, string, IEnumerable<SqlExpression>, bool, IEnumerable<bool>, Type, RelationalTypeMapping)
Creates a new SqlFunctionExpression which represents a function call in a SQL tree.
SqlFunctionExpression Function(string schema, string name, IEnumerable<SqlExpression> arguments, bool nullable, IEnumerable<bool> argumentsPropagateNullability, Type returnType, RelationalTypeMapping typeMapping = null)
Parameters
schema
stringThe schema in which the function is defined.
name
stringThe name of the function.
arguments
IEnumerable<SqlExpression>The arguments of the function.
nullable
boolA bool value indicating whether this function can return null.
argumentsPropagateNullability
IEnumerable<bool>A list of bool values indicating whether individual arguments propagate null to result.
returnType
TypeThe Type of the expression.
typeMapping
RelationalTypeMappingThe RelationalTypeMapping associated with the expression.
Returns
- SqlFunctionExpression
An expression representing a function call in a SQL tree.
Function(string, string, IEnumerable<SqlExpression>, Type, RelationalTypeMapping)
Creates a new SqlFunctionExpression which represents a function call in a SQL tree.
[Obsolete("Use overload that explicitly specifies value for 'argumentsPropagateNullability' argument.")]
SqlFunctionExpression Function(string schema, string name, IEnumerable<SqlExpression> arguments, Type returnType, RelationalTypeMapping typeMapping = null)
Parameters
schema
stringThe schema in which the function is defined.
name
stringThe name of the function.
arguments
IEnumerable<SqlExpression>The arguments of the function.
returnType
TypeThe Type of the expression.
typeMapping
RelationalTypeMappingThe RelationalTypeMapping associated with the expression.
Returns
- SqlFunctionExpression
An expression representing a function call in a SQL tree.
Function(string, string, Type, RelationalTypeMapping)
Creates a new SqlFunctionExpression which represents a function call in a SQL tree.
[Obsolete("Use NiladicFunction method.")]
SqlFunctionExpression Function(string schema, string name, Type returnType, RelationalTypeMapping typeMapping = null)
Parameters
schema
stringThe schema in which the function is defined.
name
stringThe name of the function.
returnType
TypeThe Type of the expression.
typeMapping
RelationalTypeMappingThe RelationalTypeMapping associated with the expression.
Returns
- SqlFunctionExpression
An expression representing a function call in a SQL tree.
Function(string, Type, RelationalTypeMapping)
Creates a new SqlFunctionExpression which represents a function call in a SQL tree.
[Obsolete("Use NiladicFunction method.")]
SqlFunctionExpression Function(string name, Type returnType, RelationalTypeMapping typeMapping = null)
Parameters
name
stringThe name of the function.
returnType
TypeThe Type of the expression.
typeMapping
RelationalTypeMappingThe RelationalTypeMapping associated with the expression.
Returns
- SqlFunctionExpression
An expression representing a function call in a SQL tree.
GetTypeMappingForValue(object)
Gets the relational database type for a given object, throwing if no mapping is found.
[Obsolete("Use IRelationalTypeMappingSource directly.")]
RelationalTypeMapping GetTypeMappingForValue(object value)
Parameters
value
objectThe object to get the mapping for.
Returns
- RelationalTypeMapping
The type mapping to be used.
GreaterThan(SqlExpression, SqlExpression)
Creates a SqlBinaryExpression which represents a greater than comparison.
SqlBinaryExpression GreaterThan(SqlExpression left, SqlExpression right)
Parameters
left
SqlExpressionThe left operand.
right
SqlExpressionThe right operand.
Returns
- SqlBinaryExpression
An expression representing a SQL greater than comparison.
GreaterThanOrEqual(SqlExpression, SqlExpression)
Creates a SqlBinaryExpression which represents a greater than or equal comparison.
SqlBinaryExpression GreaterThanOrEqual(SqlExpression left, SqlExpression right)
Parameters
left
SqlExpressionThe left operand.
right
SqlExpressionThe right operand.
Returns
- SqlBinaryExpression
An expression representing a SQL greater than or equal comparison.
In(SqlExpression, SelectExpression, bool)
Creates a new InExpression which represents an IN operation in a SQL tree.
InExpression In(SqlExpression item, SelectExpression subquery, bool negated)
Parameters
item
SqlExpressionAn item to look into values.
subquery
SelectExpressionA subquery in which item is searched.
negated
boolA value indicating if the item should be present in the values or absent.
Returns
- InExpression
An expression representing an IN operation in a SQL tree.
In(SqlExpression, SqlExpression, bool)
Creates a new InExpression which represents an IN operation in a SQL tree.
InExpression In(SqlExpression item, SqlExpression values, bool negated)
Parameters
item
SqlExpressionAn item to look into values.
values
SqlExpressionA list of values in which item is searched.
negated
boolA value indicating if the item should be present in the values or absent.
Returns
- InExpression
An expression representing an IN operation in a SQL tree.
IsNotNull(SqlExpression)
Creates a new SqlUnaryExpression which represent inequality to null.
SqlUnaryExpression IsNotNull(SqlExpression operand)
Parameters
operand
SqlExpressionA SqlExpression to compare to non null.
Returns
- SqlUnaryExpression
An expression representing IS NOT NULL construct in a SQL tree.
IsNull(SqlExpression)
Creates a new SqlUnaryExpression which represent equality to null.
SqlUnaryExpression IsNull(SqlExpression operand)
Parameters
operand
SqlExpressionA SqlExpression to compare to null.
Returns
- SqlUnaryExpression
An expression representing IS NULL construct in a SQL tree.
LessThan(SqlExpression, SqlExpression)
Creates a SqlBinaryExpression which represents a less than comparison.
SqlBinaryExpression LessThan(SqlExpression left, SqlExpression right)
Parameters
left
SqlExpressionThe left operand.
right
SqlExpressionThe right operand.
Returns
- SqlBinaryExpression
An expression representing a SQL less than comparison.
LessThanOrEqual(SqlExpression, SqlExpression)
Creates a SqlBinaryExpression which represents a less than or equal comparison.
SqlBinaryExpression LessThanOrEqual(SqlExpression left, SqlExpression right)
Parameters
left
SqlExpressionThe left operand.
right
SqlExpressionThe right operand.
Returns
- SqlBinaryExpression
An expression representing a SQL less than or equal comparison.
Like(SqlExpression, SqlExpression, SqlExpression)
Creates a new InExpression which represents a LIKE in a SQL tree.
LikeExpression Like(SqlExpression match, SqlExpression pattern, SqlExpression escapeChar = null)
Parameters
match
SqlExpressionAn expression on which LIKE is applied.
pattern
SqlExpressionA pattern to search.
escapeChar
SqlExpressionAn optional escape character to use in LIKE.
Returns
- LikeExpression
An expression representing a LIKE in a SQL tree.
MakeBinary(ExpressionType, SqlExpression, SqlExpression, RelationalTypeMapping)
Creates a new SqlBinaryExpression with the given arguments.
SqlBinaryExpression MakeBinary(ExpressionType operatorType, SqlExpression left, SqlExpression right, RelationalTypeMapping typeMapping)
Parameters
operatorType
ExpressionTypeAn ExpressionType reprenting SQL unary operator.
left
SqlExpressionThe left operand of binary operation.
right
SqlExpressionThe right operand of binary operation.
typeMapping
RelationalTypeMappingA type mapping to be assigned to the created expression.
Returns
- SqlBinaryExpression
A SqlBinaryExpression with the given arguments.
MakeUnary(ExpressionType, SqlExpression, Type, RelationalTypeMapping)
Creates a new SqlUnaryExpression with the given arguments.
SqlUnaryExpression MakeUnary(ExpressionType operatorType, SqlExpression operand, Type type, RelationalTypeMapping typeMapping = null)
Parameters
operatorType
ExpressionTypeAn ExpressionType reprenting SQL unary operator.
operand
SqlExpressionA SqlExpression to apply unary operator on.
type
TypeThe type of the created expression.
typeMapping
RelationalTypeMappingA type mapping to be assigned to the created expression.
Returns
- SqlUnaryExpression
A SqlUnaryExpression with the given arguments.
Modulo(SqlExpression, SqlExpression, RelationalTypeMapping)
Creates a SqlBinaryExpression which represents a modulo operation.
SqlBinaryExpression Modulo(SqlExpression left, SqlExpression right, RelationalTypeMapping typeMapping = null)
Parameters
left
SqlExpressionThe left operand.
right
SqlExpressionThe right operand.
typeMapping
RelationalTypeMappingA type mapping to be assigned to the created expression.
Returns
- SqlBinaryExpression
An expression representing a SQL modulo operation.
Multiply(SqlExpression, SqlExpression, RelationalTypeMapping)
Creates a SqlBinaryExpression which represents a multiplication.
SqlBinaryExpression Multiply(SqlExpression left, SqlExpression right, RelationalTypeMapping typeMapping = null)
Parameters
left
SqlExpressionThe left operand.
right
SqlExpressionThe right operand.
typeMapping
RelationalTypeMappingA type mapping to be assigned to the created expression.
Returns
- SqlBinaryExpression
An expression representing a SQL multiplication.
Negate(SqlExpression)
Creates a new SqlUnaryExpression which represent a negation operation in a SQL tree.
SqlUnaryExpression Negate(SqlExpression operand)
Parameters
operand
SqlExpressionA SqlExpression to apply NOT on.
Returns
- SqlUnaryExpression
An expression representing a negation operation in a SQL tree.
NiladicFunction(SqlExpression, string, bool, bool, Type, RelationalTypeMapping)
Creates a new SqlFunctionExpression which represents a niladic function call in a SQL tree.
SqlFunctionExpression NiladicFunction(SqlExpression instance, string name, bool nullable, bool instancePropagatesNullability, Type returnType, RelationalTypeMapping typeMapping = null)
Parameters
instance
SqlExpressionAn expression on which the function is applied.
name
stringThe name of the function.
nullable
boolA bool value indicating whether this function can return null.
instancePropagatesNullability
boolA value indicating if instance propagates null to result.
returnType
TypeThe Type of the expression.
typeMapping
RelationalTypeMappingThe RelationalTypeMapping associated with the expression.
Returns
- SqlFunctionExpression
An expression representing a function call in a SQL tree.
NiladicFunction(string, bool, Type, RelationalTypeMapping)
Creates a new SqlFunctionExpression which represents a niladic function call in a SQL tree.
SqlFunctionExpression NiladicFunction(string name, bool nullable, Type returnType, RelationalTypeMapping typeMapping = null)
Parameters
name
stringThe name of the function.
nullable
boolA bool value indicating whether this function can return null.
returnType
TypeThe Type of the expression.
typeMapping
RelationalTypeMappingThe RelationalTypeMapping associated with the expression.
Returns
- SqlFunctionExpression
An expression representing a function call in a SQL tree.
NiladicFunction(string, string, bool, Type, RelationalTypeMapping)
Creates a new SqlFunctionExpression which represents a niladic function call in a SQL tree.
SqlFunctionExpression NiladicFunction(string schema, string name, bool nullable, Type returnType, RelationalTypeMapping typeMapping = null)
Parameters
schema
stringThe schema in which the function is defined.
name
stringThe name of the function.
nullable
boolA bool value indicating whether this function can return null.
returnType
TypeThe Type of the expression.
typeMapping
RelationalTypeMappingThe RelationalTypeMapping associated with the expression.
Returns
- SqlFunctionExpression
An expression representing a function call in a SQL tree.
Not(SqlExpression)
Creates a new SqlUnaryExpression which represent a NOT operation in a SQL tree.
SqlUnaryExpression Not(SqlExpression operand)
Parameters
operand
SqlExpressionA SqlExpression to apply NOT on.
Returns
- SqlUnaryExpression
An expression representing a NOT operation in a SQL tree.
NotEqual(SqlExpression, SqlExpression)
Creates a SqlBinaryExpression which represents an inequality comparison.
SqlBinaryExpression NotEqual(SqlExpression left, SqlExpression right)
Parameters
left
SqlExpressionThe left operand.
right
SqlExpressionThe right operand.
Returns
- SqlBinaryExpression
An expression representing a SQL inequality comparison.
Or(SqlExpression, SqlExpression, RelationalTypeMapping)
Creates a SqlBinaryExpression which represents a bitwise OR operation.
SqlBinaryExpression Or(SqlExpression left, SqlExpression right, RelationalTypeMapping typeMapping = null)
Parameters
left
SqlExpressionThe left operand.
right
SqlExpressionThe right operand.
typeMapping
RelationalTypeMappingA type mapping to be assigned to the created expression.
Returns
- SqlBinaryExpression
An expression representing a SQL bitwise OR operation.
OrElse(SqlExpression, SqlExpression)
Creates a SqlBinaryExpression which represents a logical OR operation.
SqlBinaryExpression OrElse(SqlExpression left, SqlExpression right)
Parameters
left
SqlExpressionThe left operand.
right
SqlExpressionThe right operand.
Returns
- SqlBinaryExpression
An expression representing a SQL OR operation.
Select(IEntityType)
Creates a new SelectExpression which represents a SELECT in a SQL tree projecting an entity type from a table source created using default mapping in the model.
SelectExpression Select(IEntityType entityType)
Parameters
entityType
IEntityTypeAn entity type to project.
Returns
- SelectExpression
An expression representing a SELECT in a SQL tree.
Select(IEntityType, TableExpressionBase)
Creates a new SelectExpression which represents a SELECT in a SQL tree projecting an entity type from a table source.
SelectExpression Select(IEntityType entityType, TableExpressionBase tableExpressionBase)
Parameters
entityType
IEntityTypeAn entity type to project.
tableExpressionBase
TableExpressionBaseA table source to project from.
Returns
- SelectExpression
An expression representing a SELECT in a SQL tree.
Select(IEntityType, string, Expression)
Creates a new SelectExpression which represents a SELECT in a SQL tree projecting an entity type from a table source created using a custom SQL.
[Obsolete("Use overload which takes TableExpressionBase by passing FromSqlExpression directly.")]
SelectExpression Select(IEntityType entityType, string sql, Expression sqlArguments)
Parameters
entityType
IEntityTypeAn entity type to project.
sql
stringA custom SQL for the table source.
sqlArguments
ExpressionAn expression representing parameters passed to the custom SQL.
Returns
- SelectExpression
An expression representing a SELECT in a SQL tree.
Select(SqlExpression)
Creates a new SelectExpression which represents a SELECT in a SQL tree projecting a SqlExpression or 1 from no table and without any composition.
SelectExpression Select(SqlExpression projection)
Parameters
projection
SqlExpressionA SqlExpression to project.
Returns
- SelectExpression
An expression representing a SELECT in a SQL tree.
Subtract(SqlExpression, SqlExpression, RelationalTypeMapping)
Creates a SqlBinaryExpression which represents a subtraction.
SqlBinaryExpression Subtract(SqlExpression left, SqlExpression right, RelationalTypeMapping typeMapping = null)
Parameters
left
SqlExpressionThe left operand.
right
SqlExpressionThe right operand.
typeMapping
RelationalTypeMappingA type mapping to be assigned to the created expression.
Returns
- SqlBinaryExpression
An expression representing a SQL subtraction.