我有以下查询LINQ到与拉姆达和作为SQL WHERE条件
from p in _context.Products
where p.Purchases.Sum(item => item.CCAmount) > 0 && p.Purchases.Sum(item => item.CCAmount) > p.PayOuts.Sum((item => item.AmountPaid)
select p;
基本上我尝试检索有一个概括的购买金额大于0且其合计采购金额大于所有产品我们支付的金额(我们代表其他人出售产品并全额或部分支付)。问题是,如果特定产品的支出表中没有条目,则该产品不会出现在结果列表中。但是,如果我将支出插入支出表中,那么该产品将显示在产品列表中。它几乎就像使用一个空集合的总和不会像期望的那样评估,即0。我在这里错过了什么吗?
感谢您的帮助。
什么是生成的SQL? – svick