我正在尝试以简单模式使用IIF:
Dim MyList As List(Of Double) = New List(Of Double)
Dim ret As Double
ret = IIf(MyList.Count > 0, MyList.Max(), 0)
MyList中没有元素,但抛出了System.InvalidOperationException,“Sequence没有元素”。 为什么IIF正在评估双方?
谢谢!
答案 0 :(得分:1)
因为that是旧的VB6函数,所以使用进行短路评估的If
operator:
ret = If(MyList.Count > 0, MyList.Max(), 0)