我有以下声明
Select(g => new AssembledPartsDTO
{
..
..
References = g.SelectMany(entry => entry.References).OrderBy(t => t).ToList()
..
..
}
如何将if References.count == 0 than Add("??")
添加到References
?
答案 0 :(得分:4)
答案 1 :(得分:2)
在LINQ表达式中使用ternary operator。
你可以做这样的事情;
References = (g.SelectMany(entry => entry.References).Count() == 0)
? g.SelectMany(entry => entry.References).OrderBy(t => t).ToList() : null;
答案 2 :(得分:2)
另一种方式:
Select(g =>
{
var obj = new AssembledPartsDTO { References= ... };
if (obj.References.Count == 0)
{
obj.References.Add("??");
}
return obj;
})
对于更复杂的逻辑,您可能需要这个,其中三元运算符(?)不适用。