我试图执行计算。我有一个包含Quantity Needed(d.QtyNeeded)的捐赠表(d.QtyNeeded),我需要通过从捐助者表中提取填充数量(qtyfilled)来确定仍需要的项目数量。并非所有捐赠都有捐助者,所以我需要一个有条件的声明来处理空值,这样总和才有效。当我尝试编译时,出现错误:*运算符' - '不能应用于'int'和'bool'类型的操作数。我在Linq方面并不擅长,但我错过了什么或者有更好的方法?LINQ条件和计算 - 不能应用于'int'和'bool'类型的操作数
QtyOpen = d.QtyNeeded - (from dv in db.Donors
select dv).All(v => v.QtyFilled == null)
? 0
: (from dv in db.Donations
select dv.QtyFilled).Sum()
我尝试这样做,它默认为0,即使QtyFilled查询返回2.我可能没有正确执行。谢谢。 QtyOpen = d.QtyNeeded - (true?0 :(从dv in db.DonationVolunteerEntities 其中dv.DonationID == d.DonationID select dv).All(v => v.QtyFilled == null) ?0 : (从dv在db.DonationVolunteerEntities 选择dv.QtyFilled).Sum()), – scottrakes 2010-09-11 02:09:32
我看到我做错了。你的解决方案很完美。谢谢。 – scottrakes 2010-09-11 02:15:40