Как поместить по одной записи каждого типа в таблице в список, C#, FluidAPI / LINQ, EFCore - PullRequest
0 голосов
/ 18 июня 2020

У меня есть таблица в моей базе данных (Таблица A), где мне нужно получить по одной записи из каждого подмножества, полученного в результате выбора внешнего ключа. Реализовать это без LINQ, конечно, очень просто, но мне любопытно, как это можно сделать в LINQ ...

EX

Таблица B - это другая таблица во взаимосвязи , A.type_id = B.Id Все записи таблицы A имеют TypeId, при этом существует 3 различных типа, m, n, z.

Записи таблицы A - m, m, m, m, n, n, n, n, n, n, z, z, z, z, z, z, z

WHERE (... условия) .ToList ()

Требуемый вывод: DISTINCT A (m), DISTINCT A (n), DISTINCT A (z)

Включает не вариант.

Возможно, объяснил это немного многословно ...

Ответы [ 2 ]

0 голосов
/ 18 июня 2020

Получил ожидаемый результат с

List<Program> ps = context.Programs
                    .GroupBy(t=>t.ProgramTemplateId)
                    .Select(m=>m.Last())
                    .Where(p=>!p.Active).ToList();
0 голосов
/ 18 июня 2020

, если вы просто хотите получить отдельный набор значений (m, n, z), пробовали ли вы что-то подобное? result = EFDBContext.TableA.Select (a => a.TypeId) .Distinct ();

...