C# 클래스 Microsoft.Data.Services.Toolkit.QueryModel.ODataExpressionVisitor

Parses the OData query expression tree and generates the proper ODataQueryOperation.
상속: System.Linq.Expressions.ExpressionVisitor
파일 보기 프로젝트 열기: oising/WCFDS-Toolkit 1 사용 예제들

공개 메소드들

메소드 설명
Eval ( ) : ODataQueryOperation

Evaluates the OData query Expression.

ODataExpressionVisitor ( Expression expression ) : System

Initializes a new instance of the ODataExpressionVisitor class.

보호된 메소드들

메소드 설명
HandleCount ( ) : void

Enqueue a new operation tuple with the 'Count' value name.

HandleOrder ( Expression node, string methodName ) : void

Enqueue a new operation tuple with the 'Order' value name, the given expression and the method name.

HandleSelect ( Expression node ) : void

Enqueue a new operation tuple with the 'SelectMany' or 'Select' value name and the given expression.

HandleSelectMany ( Expression node ) : void

Enqueue a new operation tuple with the 'SelectMany' value name and the given expression.

HandleSkip ( Expression node ) : void

Enqueue a new operation tuple with the 'Skip' value name and the given expression.

HandleTop ( Expression node ) : void

Enqueue a new operation tuple with the 'Take' value name and the given expression.

HandleWhere ( Expression node ) : void

Enqueue a new operation tuple with the 'Where' value name and the given expression.

VisitConstant ( ConstantExpression node ) : Expression

Enqueue a new operation tuple with the 'Root' value name and the given expression.

VisitMethodCall ( MethodCallExpression node ) : Expression

Parses the MethodCallExpression to enqueue a new operation tuple based on the expression method name.

비공개 메소드들

메소드 설명
CreateGetOneQuery ( Queue operations, OperationTuple item, LambdaExpression projectionExpression, Type projectionType, PropertyDetails>.IDictionary projectedProperties ) : Microsoft.Data.Services.Toolkit.QueryModel.ODataSelectOneQueryOperation
EvalForQueue ( Queue tuples ) : ODataQueryOperation

Evaluates the OperationTuple queue to return a proper ODataQueryOperation.

메소드 상세

Eval() 공개 메소드

Evaluates the OData query Expression.
public Eval ( ) : ODataQueryOperation
리턴 ODataQueryOperation

HandleCount() 보호된 메소드

Enqueue a new operation tuple with the 'Count' value name.
protected HandleCount ( ) : void
리턴 void

HandleOrder() 보호된 메소드

Enqueue a new operation tuple with the 'Order' value name, the given expression and the method name.
protected HandleOrder ( Expression node, string methodName ) : void
node System.Linq.Expressions.Expression The operation tuple .
methodName string The method name.
리턴 void

HandleSelect() 보호된 메소드

Enqueue a new operation tuple with the 'SelectMany' or 'Select' value name and the given expression.
protected HandleSelect ( Expression node ) : void
node System.Linq.Expressions.Expression The operation tuple .
리턴 void

HandleSelectMany() 보호된 메소드

Enqueue a new operation tuple with the 'SelectMany' value name and the given expression.
protected HandleSelectMany ( Expression node ) : void
node System.Linq.Expressions.Expression The operation tuple .
리턴 void

HandleSkip() 보호된 메소드

Enqueue a new operation tuple with the 'Skip' value name and the given expression.
protected HandleSkip ( Expression node ) : void
node System.Linq.Expressions.Expression The operation tuple .
리턴 void

HandleTop() 보호된 메소드

Enqueue a new operation tuple with the 'Take' value name and the given expression.
protected HandleTop ( Expression node ) : void
node System.Linq.Expressions.Expression The operation tuple .
리턴 void

HandleWhere() 보호된 메소드

Enqueue a new operation tuple with the 'Where' value name and the given expression.
protected HandleWhere ( Expression node ) : void
node System.Linq.Expressions.Expression The operation tuple .
리턴 void

ODataExpressionVisitor() 공개 메소드

Initializes a new instance of the ODataExpressionVisitor class.
public ODataExpressionVisitor ( Expression expression ) : System
expression System.Linq.Expressions.Expression The initial to be parsed.
리턴 System

VisitConstant() 보호된 메소드

Enqueue a new operation tuple with the 'Root' value name and the given expression.
protected VisitConstant ( ConstantExpression node ) : Expression
node System.Linq.Expressions.ConstantExpression The operation tuple .
리턴 System.Linq.Expressions.Expression

VisitMethodCall() 보호된 메소드

Parses the MethodCallExpression to enqueue a new operation tuple based on the expression method name.
protected VisitMethodCall ( MethodCallExpression node ) : Expression
node System.Linq.Expressions.MethodCallExpression The node to be parsed.
리턴 System.Linq.Expressions.Expression