В настоящее время у меня есть следующая логика, которая составляет список из 4 целых чисел, где каждое целое представляет сумму всех голосов для определенного идентификатора элемента (1, 2, 3 или 4):
List<int> totals = new List<int>();
using (RepositoryEntities entityContext = new RepositoryEntities())
{
totals.Add(entityContext.ItemVotes.Count(v => v.Vote == 1));
totals.Add(entityContext.ItemVotes.Count(v => v.Vote == 2));
totals.Add(entityContext.ItemVotes.Count(v => v.Vote == 3));
totals.Add(entityContext.ItemVotes.Count(v => v.Vote == 4));
}
Это работает очень хорошо, но я подвергаю сомнению эффективность таких запросов, потому что это, кажется, фактически генерирует и выполняет 4 отдельных запроса.В идеале я хотел бы иметь один эффективный запрос, который возвращает мне 4 суммы.
Есть идеи?
Заранее спасибо.