LINQ GroupBy具有可能的空值

时间:2015-08-23 14:41:43

标签: c# linq null group-by

我有以下GroupBy查询:

var groups = ordered.GroupBy(k => new
        {
            a = k[SelectedFirstCategory], 
            b = k[SelectedSecondCategory], 
            c = k[SelectedThirdCategory]
        });

问题是类别可以为空。

如何修改我的GroupBy以适应这种情况。我知道我可以使用多个“if”,但这对我来说并不优雅。

为了使这个更清楚,一个例子是如果SelectedSecondCategory为null但是其他填充,则结果分组应该根据“a”和“c”属性。 我想到了像这样的无效合并:

a = SelectedFirstCategory != null ? k[SelectedFirstCategory] : DON'T KNOW WHAT TU PUT HERE.

替代价值应该是与groupBy无关的东西。

提前致谢。

1 个答案:

答案 0 :(得分:2)

我似乎很容易:

{{1}}

看来如果某个分组参数为null,则在创建组时不会将其考虑在内,这就是我想要的。