sql >> Base de Datos >  >> RDS >> PostgreSQL

EF Core GroupBy con Select Distinct Count

Actualmente cualquier tipo de distinción dentro de los grupos (como Distinct dentro de ElementSelector de GroupBy u otro GroupBy dentro de ElementSelector de GroupBy ) no es compatible con EF Core . Si insiste en usar EF en este caso, debe buscar algunos datos en la memoria:

var result = (await _context.Items
              .Select(p => new { p.ParentAId, p.ParentBId })
              .Distinct()
              .ToListAsync())  // When EF supports mentioned cases above, you can remove this line!
              .GroupBy(i => i.ParentBId, i => i.ParentAId)
              .ToDictionary(g => g.Key, g => g.Distinct().Count());