public SelectExpressionAnalyzer(IConnectorFormatter formatter, LambdaExpression expression, List <FromAlias> aliasList) { this._aliasList = aliasList; _formatter = formatter; _parameters = expression.Parameters; _expression = expression; _memberAccessDecoder = new MemberAccessDecoder(_parameters.ToList(), _aliasList); }
public object Sql(List <FromAlias> aliasList, Expression expression) { var lambda = expression as LambdaExpression; if (lambda == null) { throw new Exception("Invalid join expression"); } _memberAccessDecoder = new MemberAccessDecoder(lambda.Parameters.ToList(), aliasList); return(Visit(lambda.Body).ToString()); }
public SelectExpressionAnalyzer(IConnectorFormatter formatter, SelectStatement select, List <FromAlias> aliasList) { this._aliasList = aliasList; this._select = select; _formatter = formatter; var lambda = select.SelectExpression as LambdaExpression; if (lambda == null) { throw new Exception("Invalid expression"); } _parameters = lambda.Parameters; _expression = lambda; _memberAccessDecoder = new MemberAccessDecoder(_parameters.ToList(), _aliasList); }