Mar*_*tin 1 c# linq group-by nullable sum
我有一个LINQ语句,它工作得很好......它的选择就在这里
select new
{
Net = (System.Double?)
((from m0 in MOVTOS
where m0.DocumentType == "NET" && m0.ClientCode == c.ClientCode
group m0 by new { 0.ClientCode } into g
select new
{
Expr1 = (System.Double)g.Sum(p => p.Amount)
}).First().Expr1)
};
Run Code Online (Sandbox Code Playgroud)
现在,如果你注意到我正在使用System.Double?(可以为空的双重)作为一个演员在乞讨,因为一些值在SUM上返回为NULL.
如果我将其更改为System.Double,则会失败并显示错误
无法将null值分配给类型为System.Double的成员,该成员是非可空值类型
所以我想要做的是返回SUM的值,但如果它是NULL,那么在那里输入0.
任何帮助真的很感激
double? nullable = null;
double notNullable = nullable ?? 0;
Run Code Online (Sandbox Code Playgroud)
在你的情况下:
select new
{
Net =
(from m0 in MOVTOS
where m0.DocumentType == "NET" && m0.ClientCode == c.ClientCode
group m0 by new { 0.ClientCode } into g
select g.Sum(p => p.Amount) ?? 0).First()
};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4192 次 |
| 最近记录: |