为什么LINQ.Sum <nullable <t >>返回<nullable <t >>? LINQ.Sum什么时候返回null?

时间:2018-06-21 10:23:42

标签: c# linq sum nullable

在必须对可为空的十进制列表求和,然后必须针对null进行验证的情况下出现问题,因为CA警告和其他原因。该代码的作者说,总和永远不会为0,这就是为什么他/她没有进行检查的原因。

考虑到这一点,我还没有找到list的原因。Sum返回decimal?类型而不是'decimal'

关于签名背后的原因和/或如何处理这种情况的任何想法? (我可以将null促销仅返回十进制,但感觉像是黑客)

还有一些代码,这是我尝试获取null的尝试:

var case1 = (new List<decimal?> { }).Sum();
var case2 = (new List<decimal?> { null, null }).Sum();

0 个答案:

没有答案