public virtual QueryCommand Aggregate(DataContext context, DataFieldInfo field, AggregateType aggregateType, QueryExpression query, bool distinct) { CreateSqlState state = new CreateSqlState(context); CommandData commandData = _factory.CreateAggregateFunctionCommand(field, aggregateType, query, distinct, state); DbCommand command = commandData.CreateCommand(this, state); QueryCommand queryCommand = new QueryCommand() { Command = command, InnerPage = commandData.InnerPage }; return(queryCommand); }