public static void ReWrite(QueryModel queryModel)
        {
            var subQueryExpression = queryModel.MainFromClause.FromExpression as SubQueryExpression;

            if ((subQueryExpression != null) &&
                (subQueryExpression.QueryModel.ResultOperators.Count() == 1) &&
                (subQueryExpression.QueryModel.ResultOperators[0] is GroupResultOperator) &&
                (IsAggregatingGroupBy(queryModel)))
            {
                var rewriter = new AggregatingGroupByRewriter();
                rewriter.FlattenSubQuery(subQueryExpression, queryModel.MainFromClause, queryModel);
            }
        }
예제 #2
0
        public static void ReWrite(QueryModel queryModel)
        {
            var subQueryExpression = queryModel.MainFromClause.FromExpression as SubQueryExpression;

            if ((subQueryExpression != null) &&
                (subQueryExpression.QueryModel.ResultOperators.Count() == 1) &&
                (subQueryExpression.QueryModel.ResultOperators[0] is GroupResultOperator) &&
                (IsAggregatingGroupBy(queryModel)))
            {
                var rewriter = new AggregatingGroupByRewriter();
                rewriter.FlattenSubQuery(subQueryExpression, queryModel.MainFromClause, queryModel);
            }
        }