這裏是我當前的工作,查詢:如何將條件添加到使用組的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