2012-01-12 84 views
0

我想通過Linq查詢從第一個塊到第二個塊,這可能嗎?Linq子分組查詢

Year Quarter WordDoc SpreadSheet 
--------------------------------------------------- 
2005 Q1  q1file.doc - 
2005 Q1  -     q1file.xls 
2005 Q2  q2file.doc - 
2005 Q2  -      q2File.xls 
2005 Q3  q3file.doc - 
2005 Q3  -      q3File.xls 
2006 Q4  q4file.doc - 
2006 Q4  -      q4File.xls 

2號地塊:

Year Quarter WordDoc SpreadSheet 
--------------------------------------------------- 
2005 
     Q1  q1file.doc q1File.xls 
     Q2  q2file.doc q2File.xls 
     Q3  q3file.doc q3File.xls 
2006   
     Q4  q4file.doc q4File.xls 

不幸的是我能想出到目前爲止是按年份分組:

var results = 
    from entry in SampleDeals 
    group entry by entry.Year into years 
    select years; 

results.Dump(); 
+0

提示:你p可以自由地想要加入。 – 2012-01-12 15:56:16

回答

0

假設所有的組有2個要素,一個用word文檔另一個用電子表格:

var groups = SampleDeals.GroupBy(deal => new {Year = deal.Year, Quarter = deal.Quarter}); 
var whatYouWant = groups.Select(group => new {Year = group.Year, Quarter = group.Quarter,  
         WordDoc = group.First().WordDoc ?? group.ElementAt(1).WordDoc, 
         SpreadSheet = group.First().SpreadSheet ?? group.ElementAt(1).SpreadSheet});