private void UpdateAggregateRow(object[] row, object[] n, int len) { for (int i = 0; i < len; i++) { ColumnType type = eColumn[i].ColumnType; switch (eColumn[i].Type) { case ExpressionType.Average: case ExpressionType.Sum: case ExpressionType.Count: row[i] = Column.Sum(row[i], n[i], type); break; case ExpressionType.Minimum: row[i] = Column.Min(row[i], n[i], type); break; case ExpressionType.Maximum: row[i] = Column.Max(row[i], n[i], type); break; default: row[i] = n[i]; break; } } }