我现在有以下逻辑的生成的4个整数,其中每个整数表示的所有票的总和为一定的项目ID的列表(1,2,3或4):LINQ到实体查询优化
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个数字。
任何想法?
在此先感谢。
可能要看看这里http://msdn.microsoft.com/en-us/vcsharp/aa336747#countGrouped – 2011-04-08 21:13:56