protected override Expression VisitAggregate(SqlAggregateExpression sqlAggregate)
        {
            if (sqlAggregate.AggregateType == SqlAggregateType.Average && sqlAggregate.Argument.Type.IsIntegerType())
            {
                return(sqlAggregate.ChangeArgument(Expression.Convert(sqlAggregate.Argument, typeof(double))));
            }

            return(base.VisitAggregate(sqlAggregate));
        }