2010-04-21 111 views
0

我写了两个查询查找重复阵列结合LINQ查询与“分组依据”

var groups = from item in array     
      group item by item; 
var q1 = from grp in groups 
     where grp.Count() > 1 
     select grp.Key; 

是否有一个LINQ查询写这样的方式?我知道我可以使用方法调用

array.GroupBy(i => i).Where(g => g.Count() > 0).Select(g => g.Key) 

,但我很好奇,如果有可能使用LINQ语法

回答

2

当然,它看起来像这样:

var duplicateItems = from item in array 
        group item by item into grp 
        where grp.Count() > 1 
        select grp.Key; 

的关键在于结合查询是into关键字。

+0

就是这样!谢谢! – Max 2010-04-21 13:12:57

+0

@Max:没问题:) – 2010-04-21 13:13:36