Click or drag to resize

GenericExpressionHandler Class

Generic class for the expression handlers. This base class defines the overall mechanism engine and derived class(es) fill in the blanks how various elements have to be converted to LLBLGen Pro elements.
Inheritance Hierarchy
SystemObject
  SD.LLBLGen.Pro.LinqSupportClasses.ExpressionHandlersGenericExpressionHandler
    More...

Namespace:  SD.LLBLGen.Pro.LinqSupportClasses.ExpressionHandlers
Assembly:  SD.LLBLGen.Pro.ORMSupportClasses (in SD.LLBLGen.Pro.ORMSupportClasses.dll) Version: 5.5.0.0 (5.5.18.1019)
Syntax
public abstract class GenericExpressionHandler

The GenericExpressionHandler type exposes the following members.

Constructors
  NameDescription
Protected methodGenericExpressionHandler
Initializes a new instance of the GenericExpressionHandler class.
Top
Properties
  NameDescription
Protected propertyFrameworkElementCreator
Gets the framework element creator.
Protected propertyFunctionMappings
Gets the function mappings.
Protected propertyGeneratedCodeElementCreator
Gets the generated code element creator.
Protected propertyTrackedMappings
Gets the mappings of various objects defined during the process operations of the expression tree.
Top
Methods
  NameDescription
Public methodEquals
Determines whether the specified object is equal to the current object.
(Inherited from Object.)
Protected methodFinalize
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object.)
Public methodFindFunctionMapping(MemberInfo)
Finds the function mapping associated with the property specified.
Public methodFindFunctionMapping(MethodInfo)
Finds the function mapping associated with the method/function specified.
Protected methodFindFunctionMapping(String, Type, Int32)
Finds the function mapping associated with the method/function specified.
Protected methodFindGroupJoinExpressionAsCopy
Finds the group join expression using the alias of the right side. It then creates a copy of it (and its contents) so the caller can manipulate it.
Public methodGetHashCode
Serves as the default hash function.
(Inherited from Object.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Protected methodHandleAggregateExpression
Handles the aggregate expression.
Protected methodHandleAllAnyExpression
Handles all any expression.
Protected methodHandleBinaryExpression
Handles the binary expression.
Protected methodHandleBinaryExpressionArithmeticOrBitOperator
Handles the binary expression with arithmetic or bit operator.
Protected methodHandleBinaryExpressionBooleanOperator
Handles the binary expression with a boolean operator.
Protected methodHandleConditionalExpression
Handles the conditional expression.
Protected methodHandleConstantExpression
Handles the constant expression.
Protected methodHandleContainsExpression
Handles the contains expression.
Protected methodHandleDbFunctionCallExpression
Handles the db function call expression.
Protected methodHandleDefaultIfEmptyExpression
Handles the default if empty expression.
Protected methodHandleElementInitializer
Handles the element initializer.
Protected methodHandleElementInitializerList
Handles the element initializer list.
Protected methodHandleEntityExpression
Handles the entity expression.
Protected methodHandleEntityFieldExpression
Handles the entity field expression.
Protected methodHandleExceptIntersectExpression
Handles the except expression.
Protected methodHandleExcludeIncludeFieldsExpression
Handles the exclude include fields expression.
Public methodHandleExpression
Handles the expression.
Protected methodHandleExpressionList
Handles the expression list.
Protected methodHandleGroupByExpression
Handles the group by expression.
Protected methodHandleGroupByKeyReferenceExpression
Handles the group by key reference expression.
Protected methodHandleGroupJoinExpression
Handles the groupjoin expression.
Protected methodHandleInClauseExpression
Handles the in clause expression, which is an expression representing a call to Contains on a list of values.
Protected methodHandleInMemoryEvalCandidateExpression
Handles the in memory eval candidate expression.
Protected methodHandleInvocationExpression
Handles the invocation expression.
Protected methodHandleJoinExpression
Handles the join expression.
Protected methodHandleJoinResultExpression
Handles the JoinResult expression.
Protected methodHandleLambdaExpression
Handles the lambda expression.
Protected methodHandleLikeExpression
Handles the like expression.
Protected methodHandleLinqExpressionAsSetExpression
Handles the LinqExpression as set expression.
Protected methodHandleListInitExpression
Handles the list init expression.
Protected methodHandleLLBLGenProExpressionExpression
Handles the LLBLGenProExpressionExpression.
Protected methodHandleMemberAssignment
Handles the member assignment.
Protected methodHandleMemberBinding
Handles the member binding.
Protected methodHandleMemberBindingList
Handles the member binding list.
Protected methodHandleMemberExpression
Handles the member expression.
Protected methodHandleMemberInitExpression
Handles the member init expression.
Protected methodHandleMemberListBinding
Handles the member list binding.
Protected methodHandleMemberMemberBinding
Handles the member member binding.
Protected methodHandleMethodCallExpression
Handles the method call expression.
Protected methodHandleNewArrayExpression
Handles the new array expression.
Protected methodHandleNewExpression
Handles the NewExpression expression
Protected methodHandleParameterExpression
Handles the parameter expression.
Protected methodHandlePathEdgeExpression
Handles the path edge expression.
Protected methodHandlePrefetchPathExpression
Handles the prefetch path expression.
Protected methodHandleProjectionExpression
Handles the projection expression
Protected methodHandleQueryExpression
Handles the query expression.
Protected methodHandleSelectExpression
Handles the select expression.
Protected methodHandleSetReferenceExpression
Handles the set reference expression.
Protected methodHandleSortClauseExpression
Handles the sort clause expression.
Protected methodHandleTypeBinaryExpression
Handles the type binary expression.
Protected methodHandleTypedViewExpression
Handles the typed view expression.
Protected methodHandleUnaryArrayLength
Handles the length of the unary array.
Protected methodHandleUnaryConvertExpression
Handles the unary convert expression.
Protected methodHandleUnaryExpression
Handles the unary expression.
Protected methodHandleUnaryNotExpression
Handles the unary expression of type 'Not'.
Protected methodHandleUnaryTypeAsExpression
Handles the unary type as expression.
Protected methodHandleUnionList
Handles the specified unionlist and its contained set expressions. Will return a new list if one or more set expressions changed after handling.
Protected methodHandleWhereExpression
Handles the where expression.
Protected methodMakeSet
Converts the expression passed in to a SetExpression, if it's not already a set.
Protected methodMemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Protected methodTraceLine
Traces the line.
Protected methodTraceScopeEnd
Traces the scope end.
Protected methodTraceScopeStart
Traces the scope start.
Top
Fields
  NameDescription
Public fieldStatic memberSwitch
The traceswitch for the Linq Expression handler.
Top
Remarks
Code based on Matt Warren's example: http://blogs.msdn.com/mattwar/archive/2010/07/31/linq-building-an-iqueryable-provider-part-ii.aspx
See Also
Inheritance Hierarchy
SystemObject
  SD.LLBLGen.Pro.LinqSupportClasses.ExpressionHandlersGenericExpressionHandler
    SD.LLBLGen.Pro.LinqSupportClasses.ExpressionHandlersAliasCorrector
    SD.LLBLGen.Pro.LinqSupportClasses.ExpressionHandlersAliasScoper
    SD.LLBLGen.Pro.LinqSupportClasses.ExpressionHandlersCloner
    SD.LLBLGen.Pro.LinqSupportClasses.ExpressionHandlersCorrelationRelationFinder
    SD.LLBLGen.Pro.LinqSupportClasses.ExpressionHandlersDerivedTableFieldInjector
    SD.LLBLGen.Pro.LinqSupportClasses.ExpressionHandlersExpressionReplacer
    SD.LLBLGen.Pro.LinqSupportClasses.ExpressionHandlersExpressionTreeKeyCreator
    SD.LLBLGen.Pro.LinqSupportClasses.ExpressionHandlersJoinRewriter
    SD.LLBLGen.Pro.LinqSupportClasses.ExpressionHandlersLocalFunctionProducer
    SD.LLBLGen.Pro.LinqSupportClasses.ExpressionHandlersMemberAccessEvaluator
    SD.LLBLGen.Pro.LinqSupportClasses.ExpressionHandlersNonProjectionExpressionExtractor
    SD.LLBLGen.Pro.LinqSupportClasses.ExpressionHandlersPreProcessor
    SD.LLBLGen.Pro.LinqSupportClasses.ExpressionHandlersQueryExpressionBuilder
    SD.LLBLGen.Pro.LinqSupportClasses.ExpressionHandlersQueryExpressionCoercer
    SD.LLBLGen.Pro.LinqSupportClasses.ExpressionHandlersRequiredProjectionCorrector