Linq +单线条件

时间:2016-08-18 19:28:50

标签: c# linq conditional-statements

这是一段代码:

var test = myListOfItems.Select(x => MyMethodReturningObject(x.SubItems) != null ? theValue : x.SubItems[0])

我希望如果MyMethodReturningObject返回一个对象,我将返回值赋给theValue。

有点像这样:

var test = myListOfItems.Select(x => MyFunctionReturningObject(x.SubItems) != null ? MyMethodReturningObject(x.SubItems): x.SubItems[0])

但是没有两次调用该方法。

这可以通过Linq吗?

谢谢!

1 个答案:

答案 0 :(得分:3)

var test = myListOfItems.Select(x => MyFunctionReturningObject(x.SubItems) ?? x.SubItems[0])