从linq查询中获取计数

时间:2014-02-21 21:39:10

标签: c# linq

嗨,我有困难试图计算。目前它正在显示所有记录但是我想要计数而不是。

using (var ctx = DB.Get())
   {
   Items.AddRange(   
                  ctx.Interactions.Where(x => x.ActivityDate >= StartDateTo &&
                    x.ActivityDate <= EndDateTo && x.Indepth == true).Select(
                    x => new InteractionDTO()
                      {                              
                          Indepth = x.Indepth
                       }
                     )
                 );
    }

1 个答案:

答案 0 :(得分:2)

鉴于您当前的代码,可以通过替换&#34;其中&#34;来实现计数。用&#34;计数&#34;如下所示。

return ctx.Interactions.Count(x => x.ActivityDate >= StartDateTo &&
                    x.ActivityDate <= EndDateTo && x.Indepth == true)

更新:为了保留绑定,您可能应该计算您要添加到的收藏集:

using (var ctx = DB.Get())
   {
   Items.AddRange(   
                  ctx.Interactions.Where(x => x.ActivityDate >= StartDateTo &&
                    x.ActivityDate <= EndDateTo && x.Indepth == true).Select(
                    x => new InteractionDTO()
                      {                              
                          Indepth = x.Indepth
                       }
                     )
                 );

int count = Items.Count();
    }