2011-02-17 111 views
1

我敢肯定有一個簡單的方法來做到這一點,但我不能拿出它...用LINQ拆分集合

我有一個集合字符串字段的集合。我想要做的是將這個集合分成(n)個集合。我會以類似於這樣的循環結束:

foreach (var group in groups) 
{ 
    foreach (var item in group) 
    { 
     //process item. 
    } 
} 

任何指導那裏???謝謝!

編輯例如:

有鑑於此:

​​

我想獲得一個集合有3個元素。元素1將成爲人們的集合(The Does),元素2將成爲人們的集合(The Barkers),元素3將成爲Billy Bob的集合。

+1

閱讀了裏面描述集合元素類型多一點。詳細說明一個例子 - 樣本輸入和預期輸出。 – Gishu 2011-02-17 14:46:32

+0

@Gishu:看編輯。 – 2011-02-17 16:00:05

回答

5

也許,GroupBy會有幫助嗎?

var grouped = groups.GroupBy(g => g.Group); 
+0

GroupBy是關鍵。謝謝!! – 2011-02-17 16:41:01

2

編輯:讓它適合這個例子。我們一羣人通過自己的姓氏,遍歷組,那麼每個人遍歷每個組

var groupedCollection = from person in people 
         group person by person.LastName; // or use .GroupBy() 
foreach (var group in groupedCollection) 
{ 
    var lastName = group.Key; 
    foreach (var person in group) 
    { 
     // do stuff with person 
    } 
} 

更多的分組樣本here