空列表抛出的平均值InvalidOperationException:序列不包含任何元素

时间:2020-02-20 01:20:54

标签: c# linq

以下代码

double avg = item?.TechnicianTasks?.Average(x => x.Rating) ?? 0

抛出

InvalidOperationException:序列不包含任何元素

item.TechnicianTasks应该为空,但是我看到它是一个空列表,但是为什么平均值不为零?我不明白这个例外。

1 个答案:

答案 0 :(得分:1)

没什么-它只是代码的编写方式。 https://www.youtube.com/embed/lBTCB7yLs8Y?enablejsapi=1&amp=1&playsinline=1,您会看到-

例外

ArgumentNullException-源为空。

InvalidOperationException-源不包含任何元素。

虽然有道理。您无法从零项中获得平均值。