ienumerable.sum null异常

时间:2017-12-27 23:54:32

标签: asp.net-core-mvc entity-framework-core

我试图找出处理此问题的最佳方法,我有ienumerable.sum null异常。

基本上我有一个类将其子对象的总和作为返回值。

这样的事情:

Part Class:

public ICollection<ContractLineItem> ContractLineItems { get; set; }
public float TotalReceiptSpendLong { get { 
       return ContractLineItems.Sum(s => s.TotalReceiptSpend);  
} }

contractlineitems类包含一个收货类的ICollection,该收货类在contractLineItems TotalReceiptSpend浮点数中合计。除非合同项目没有收据,否则此工作正常。然后抛出一个null异常。有没有办法处理这个问题?

1 个答案:

答案 0 :(得分:0)

考虑使用Null-conditional Operators (C# and Visual Basic)?? Operator (C# Reference)

 return ContractLineItems?.Sum(s => s?.TotalReceiptSpend ?? 0) ?? 0;

这样,如果上面引用的任何变量都为null,它将默认为零(0),并在调用Sum时避免空引用错误