首页 > 解决方案 > 如果计数等于 0,如何使这个 Android044 = g.Count(i => i.Android044 == 1) 返回 null?

问题描述

我有这个 LINQ 查询:

.Select(g => new AppVersionModel
    {
       DateYYMMDD = g.Key,
       Android044 = g.Count(i => i.Android044 == 1)
    })
.ToList());

Android044被定义为一个int?

现在它计算 Android044 中的数字,但是当没有行时它返回 0。有没有办法让它返回 null。

有没有办法做到这一点,我什至可以使用另一个 .Select 如果可以的话,但我对 LINQ 不是很熟悉,所以希望有另一种解决方案。

标签: c#linq

解决方案


.Select(g => new AppVersionModel
{
   DateYYMMDD = g.Key,
   Android044 = g.Count(i => i.Android044 == 1) == 0 
      ? (int?) null 
      : (int?) g.Count(i => i.Android044 == 1) 
})
.ToList());

推荐阅读