这里是我当前的工作,查询:如何将条件添加到使用组的LINQ查询?
var lsFooterRow = from i in _context.Inventory
where i.ClaimId == claimID
&& i.Taxable == false
group i by new { i.ClaimId }
into grp
select new
{
SumOfReplValue = grp.Sum(i => i.Price),
SumOfACV = grp.Sum(i => i.ACV),
SumOfReplCost = grp.Sum(i => i.ReplacementCost)
};
我想什么补充,使之有条件的,是这样的,使之与ClaimID的应纳税沿增加了一个过滤器的基本查询:
if (reportType == "R")
lsFooterRow = lsFooterRow.Where(i => i.ReplCost > 0);
这是不是因为工作就是不承认ReplCost,只有SumOfReplValue,SumOfACV和SumOfReplCost。
有人可以告诉我,没有在两个步骤中执行查询,一种方法来添加此条件?如果没有办法做到这一点,将不胜感激:-)
在此先感谢!
当一个组被创建时,投影类型也被改变,所以需要另一个变量而不是lsFooterRow – 2012-03-26 22:12:44
@AdrianIftode好的,我只是把它扔在一起。我修好了。 – Devin 2012-03-26 22:15:21
@Devin,谢谢,这对我来说非常有用。它不像我所希望的那样“整齐”,但是鉴于它的有效性,正如你所说的那样,这是一个很好的解决方案。这是一个伟大的“两步走”方法,可以在不牺牲性能的情况下提供灵活性,让人感到鼓舞! – 2012-03-27 20:22:33