linq to entity framework:类似于isnull

时间:2011-10-03 10:17:35

标签: linq entity-framework

我有:

a = b.Sum(...) + c.Sum(...)

其中b,c是实体。 问题是:当(b.Sum(...)c.Sum(...))中的至少一个为空时,a将为空。我想将null视为0.我该怎么做?

3 个答案:

答案 0 :(得分:1)

也许是这样的

a = ( b.Sum(...) + c.Sum(...)) ?? 0;

现在如果表达式为null,则a将为0;

答案 1 :(得分:1)

至少在LINQ2SQL中,您可以手动转换为int?,然后处理空案例<​​/ p>

a = ((int?)b.Sum(...) + c.Sum(...)).GetValueOrDefault();

答案 2 :(得分:0)

我认为你可以使用null coelesce:

a = (b.Sum(..) + c.Sum(...)) ?? 0;

注意:未经检查的语法!不确定你的总和在做什么!

查看以下MSDN文章:http://msdn.microsoft.com/en-us/library/ms173224.aspx