2010-04-21 5 views
0

j'ai écrit deux requêtes pour trouver des doublons dans le tableauLa combinaison de requêtes LINQ avec « groupe par »

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

Est-il possible d'écrire ceci dans une requête LINQ? Je sais que je peux utiliser la méthode appelle

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

, mais je suis curieux de savoir s'il est possible d'utiliser la syntaxe LINQ

Répondre

2

Bien sûr, il ressemble à ceci:

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

La clé de la combinaison les requêtes sont le mot-clé into.

+0

C'est tout! Merci! – Max

+0

@Max: Pas de problème :) –