C# Класс Rebel.Framework.Expressions.Remotion.CustomQueryParser

Heavily based on the default QueryParser normally used in Relinq, but primary difference is that we need to establish a different ExpressionTreeParser with a custom DynamicTransformingExpressionTreeProcessor in place of the default TransformingExpressionTreeProcessor in order to avoid it from precompiling certain expressions such as those referencing DynamicMemberMetadata.GetMemberMethod in order to reference dynamic operations inside regular .NET 3.5 expression trees. Relinq doesn't support DynamicExpression from .NET 4 at time of writing.
Наследование: IQueryParser
Показать файл Открыть проект

Открытые методы

Метод Описание
CreateDefault ( ) : CustomQueryParser
CustomQueryParser ( Remotion.Linq.Parsing.Structure.ExpressionTreeParser expressionTreeParser ) : System.Linq.Expressions
GetParsedQuery ( Expression expressionTreeRoot ) : Remotion.Linq.QueryModel

Защищенные методы

Метод Описание
EnsureCustomModifiersRegisteredWithRelinq ( ) : void

Ensures the custom modifiers are registered with Relinq.

Приватные методы

Метод Описание
ApplyAllNodes ( IExpressionNode node, Remotion.Linq.Parsing.Structure.IntermediateModel.ClauseGenerationContext clauseGenerationContext ) : Remotion.Linq.QueryModel

Описание методов

CreateDefault() публичный статический Метод

public static CreateDefault ( ) : CustomQueryParser
Результат CustomQueryParser

CustomQueryParser() публичный Метод

public CustomQueryParser ( Remotion.Linq.Parsing.Structure.ExpressionTreeParser expressionTreeParser ) : System.Linq.Expressions
expressionTreeParser Remotion.Linq.Parsing.Structure.ExpressionTreeParser
Результат System.Linq.Expressions

EnsureCustomModifiersRegisteredWithRelinq() защищенный Метод

Ensures the custom modifiers are registered with Relinq.
protected EnsureCustomModifiersRegisteredWithRelinq ( ) : void
Результат void

GetParsedQuery() публичный Метод

public GetParsedQuery ( Expression expressionTreeRoot ) : Remotion.Linq.QueryModel
expressionTreeRoot System.Linq.Expressions.Expression
Результат Remotion.Linq.QueryModel