|
Группировка в EF core 3.1.2 c System.Linq.Dynamic.Core
|
|||
---|---|---|---|
#18+
Всем привет, использую вышеописанный в сабже стек и к сожалению уперся в недавно внесенную фичу для EF core- запрет группировки на клиентской стороне. Есть у меня запрос, который берет записи и группирует их. Чтобы можно было поразнообразнее составлять фильтр я использую System.Linq.Dynamic.Core Код: c# 1. 2. 3. 4. 5. 6. 7. 8.
Данная конструкция успешно отработала бы до EF core версии<3.0. Однако сейчас при вызове я получаю ошибку "Client side GroupBy is not supported." Соответственно, чтобы группировка произвелась, необходимо вызвать .AsEnumerable() перед группировкой(из описаний решения новых проблем с EF Core 3.1). Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9.
Но в таком случае отваливается метод-расширение GroupBy, потому что он ожидает IQueryable в качестве источника, а ему подсовывают IEnumerable. Как можно заставить работать группировку?Спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2020, 15:51 |
|
Группировка в EF core 3.1.2 c System.Linq.Dynamic.Core
|
|||
---|---|---|---|
#18+
vb_sub Но в таком случае отваливается метод-расширение GroupBy, потому что он ожидает IQueryable в качестве источника, а ему подсовывают IEnumerable. Как можно заставить работать группировку?Спасибо Сделайте сначала ToList, затем свою группировку, какую душе угодно. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2020, 10:07 |
|
Группировка в EF core 3.1.2 c System.Linq.Dynamic.Core
|
|||
---|---|---|---|
#18+
hVostt, спасибо помогла, проблема была в том, что AsEnumerable от Linq.Dynamic.Core давал на выходе Ienumerable<dynamic>, а ToList давал список конкретных типов. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2020, 15:22 |
|
|
start [/forum/topic.php?fid=17&fpage=2&tid=1349081]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
27ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
46ms |
get tp. blocked users: |
2ms |
others: | 13ms |
total: | 137ms |
0 / 0 |