Click or drag to resize
SD.LLBLGen.Pro.LinqSupportClasses.ExpressionClasses Namespace
 
Classes
  ClassDescription
Public classAggregateExpression
Specific expression class which represents an Aggregate expression, which is an expression which defines an aggregate function on a set. An AggregateExpression is a SetExpression because it represents a subquery, and with that a set of one value: a scalar. The class is a SetExpression because it contains a scope of aliases, and alias scopes are properly handled for set expressions.
Public classAllAnyExpression
Expression class which defines an All or Any expression, as a replacement for a MethodCallExpression representing a call to Queryable.All or Any
Public classCommonExpression
The class which is placed between Expression and our own expression classes. This way we can introduce a Handle routine to simulare multiple-dynamic dispatch ala the visitor pattern, as the normal Expression object doesn't offer that feature and we're otherwise stuck with large bug switch / case statements. (still a switch/case is needed for .NET's Expression classes)
Public classContainsExpression
Expression class which defines a Contains expression, as a replacement for a MethodCallExpression representing a call to Queryable.Contains or IEntityCollection(2).Contains
Public classDbFunctionCallExpression
Specific expression class which represents a database function call. This expression typically contains the pattern to pass to the DbFunctionCall object as well as the arguments for it.
Public classDefaultIfEmptyExpression
Expression class which define a DefaultIfEmpty expression, as a replacement for a MethodCallExpression representing a call to Queryable.DefaultIfEmpty and the complete subtree
Public classEntityExpression
Special expression class which is used in expression tree handling to represent an entity type node. This can be a set or a single entity. The expression type is set to the type represented by this expression in the tree. The EntityType property is set to the type of the entity represented by this expression.
Public classEntityFieldExpression
Specific expression class which represents an EntityField(2) object. It could be that the field is in a related entity (e.g. od.Order.Customer.Country), and relations are necessary to access the field. These relations are then part of this entityfield expression.
Public classExceptIntersectExpression
Expression class which defines an Except or Intersect expression, as a replacement for a MethodCallExpression representing a call to Queryable.Except or Queryable.Intersect. Except and Intersect share this same expression because their SQL differs only in a NOT: Except uses a negated filter, Intersect uses just the filter.
Public classExcludeIncludeFieldsExpression
Specific expression class which represents an ExcludeIncludeFields list. It is used both for ExcludeFields and IncludeFields.
Public classFilterExpression
Special expression class which is used in expression tree handling to represent a filter node. A filter node is a node which contains a predicate expression and 0 or more relations, which are the basis for the filter (so if specified, the relations are required to reach the element(s) to filter on by the predicate(expression) inside the filter.
Public classGroupByExpression
Expression class which define a GroupBy expression, as a replacement for a MethodCallExpression representing a call to Queryable.GroupBy and the complete subtree
Public classGroupByKeyReferenceExpression
Special expression class which is used in expression tree handling to represent a reference to the key of a groupby
Public classGroupJoinExpression
Special expression class which is used in expression tree handling to represent a GroupJoin node.
Public classHintableElementExpression
Expression class which is used to specify an expression type to which hints can be applied
Public classInClauseExpression
Specific expression which represents a Contains() call on a list of values. In a Contains call on a list of values, the operand passed to Contains is compared against the list of values.
Public classInMemoryEvalCandidateExpression
Specific expression which represents a linq expression which has to be evaluated in memory and shouldn't be used to produce LLBLGen Pro objects or SQL.
Public classJoinExpression
Special expression class which is used in expression tree handling to represent a Join node.
Public classJoinResultExpression
Special expression class which is used in expression tree handling to represent a JoinResult, which is a select and also a result of a join. The type is used to make a distinction between a normal select and a JoinResult with a projection: if the JoinSelectExpression is the source of a SelectExpression, or other expression which has a projection, the contained projection of this select is ignored. This class is required because in Linq, a select's projection is combined with the join result projection if the join is followed by a select.
Public classLikeExpression
Specific expression which represents a Contains() call on a string-typed element, which can be an entityfield, expression or query, and a constant string as operand.
Public classLinqExpressionAsSetExpression
Special expression class which is used in expression tree handling to have a LinqExpression be used as a SetExpression. The member is evaluated later on but should be seen as a set, so it can get an alias first.
Public classLLBLGenProExpressionExpression
Specific expression class which represents an LLBLGen Pro expression object. This could mean a simple Expression, a dbfunction call, a scalar query or other IExpression implementing classes.
Public classPathEdgeExpression
Specific expression class which represents a path edge in a specified path inside a query.
Public classPrefetchPathExpression
Specific expression class which represents a PrefetchPath. This expression is the root definition of a prefetch path and the container for the edges right below the root node of the graph.
Public classProjectionExpression
Special expression class which is used in expression tree handling to represent a projection. During the tree processing, this node gains more and more information.
Public classProjectionListExpression
Specific expression class which represents a list of elements for a projection, e.g. fields and constants.
Public classQueryExpression
Class which represents a query for LLBLGen Pro. This expression type is used when the tree is reduced to a single query.
Public classRelationCollectionExpression
Specific expression class which represents a relation collection, one or more relation objects. This collection is simple, it just contains the relation collections and has no real type. It's used as an intermediate result for joinexpression evaluation if more than one join is present and is also the source of a selectexpression, the final result of a joinexpression hierarchie.
Public classSelectExpression
Special expression class which is used in expression tree handling to represent a SelectExpression node. The SelectExpression class is used to specify a tree with a projection and an IQueryable source, as well as potentially joins, where etc.
Public classSetExpression
Special expression class which is used in expression tree handling to represent a Set node. This class is specialized for more special sets.
Public classSetReferenceExpression
Special expression class which is used in expression tree handling to represent a reference to a set with an alias elsewhere in the tree.
Public classSortClauseExpression
Special expression class which is used in expression tree handling to represent a sort clause
Public classTypedViewExpression
Special expression class which is used in expression tree handling to represent a typed view type node. This can be a set or a single typed view row. The expression type is set to the type represented by this expression in the tree. The TypedViewType property is set to the type of the TypedViewRow class represented by this expression.
Public classWhereExpression
Expression class which define a where expression, as a replacement for a MethodCallExpression representing a call to Queryable.Where and the complete subtree