2011-12-26 34 views
0

我有一個問題,試圖組一個小的LINQ查詢。分組linq語句,看起來不像組

查詢不會發生分組。我假設它有3個不同的領域,我試圖組合。

 var data = (from d in All() 
        group d by new { d.CustomerNumber, d.TransactionAmount, d.CustomerName } 
         into g 
         orderby g.Key.CustomerName 
         select new TransactionViewModel 
            { 
             CustomerNumber = g.Key.CustomerNumber, 
             TransactionAmount = g.Sum(s=>s.TransactionAmount), 
             CustomerName = g.Key.CustomerName 
            }); 

理想情況下,我希望能夠返回分組數據訪問3個字段。

我需要修改什麼?

回答

2

你確定你必須通過新的{d.CustomerNumber,d.TransactionAmount,d.CustomerName}來做d組嗎 我剛剛從組中刪除了TransactionAmount,因爲它對每一行都是不同的。

TRy this。

(from d in All() group d by new { d.CustomerNumber, d.CustomerName } into g orderby g.Key.CustomerName select new Test { CustomerNumber = g.Key.CustomerNumber, TransactionAmount = g.Sum(s => s.TransactionAmount), CustomerName = g.Key.CustomerName }); 
+0

原來我沒有:)謝謝dotnetstep。 – 2011-12-26 10:00:05

相關問題