Я думаю, вы пытаетесь объединить группу и с помощью в базе данных. Таким образом, вы просто запрашиваете один раз в базе данных, поэтому лучшая производительность .
Попробуйте следующее:
List<Partner> items = await(from p in _context.Partners
join d in _context.Devices
on p.Id equals d.PartnerId
group d by d.Partner /*relation property*/ into g
select new Partner
{
Id = g.Key.Id,
Name= g.Key.Name,
DeviceCount=g.Count()
// select other your properties here
}).OrderBy(k => k.Name).ToListAsync();
Но если вы хотите продолжить то, что вы были делать то, что не рекомендуется, попробуйте поместить таблицу Partner в память, затем выберите данные из них в таблицах памяти. вот так:
var partners=await _context.Partners.ToListAsync();