Это зависит.Если опция LINQ является опцией (то есть вы используете платформу сущностей или не используете хранимые процедуры), вы можете программно изменить group by
в своем коде C #, продолжая группировать на сервере.
Если вы не можете использовать модель LINQ / Entity, но ваш group by
может динамически меняться, выполните группировку на уровне приложения, чтобы вы могли сгруппировать данные так, как вам нужно, на основе пользовательских параметров без использования миллиарда различных параметров запроса.
В противном случае, выполните это на сервере, потому что это уменьшает потребление полосы пропускания, быстрее с точки зрения времени передачи и в целом быстрее, потому что группировка SQL (и общей базы данных) намного быстрее, чем то, что вы делали бы в C #.
Вот интересующие ссылки: