2011-02-17 73 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