2014-05-19 4 views
-4

Je suis nouveau sur ASP.net & J'utilise MVC Code-First pour mon projet.Linq Distinct Values ​​avec des valeurs répétées

Item Category SubCategory 
Item1 Cat1 Subcat1 
Item2 Cat2 Subcat2 
Item3 Cat3 Subcat1 
Item4 Cat2 Subcat2 
Item5 Cat1 Subcat2 
Item6 Cat2 Subcat3 

Je veux obtenir un & Catégories Distinct Liste sous catégories pertinentes de ce tableau. Quelqu'un peut-il m'aider, comment y parvenir en utilisant, requête Linq? (Il devrait être quelque chose de similaire à ce sujet.)

Cat1 =>Subcat1, Subcat2 
Cat2 =>Subcat2,Subcat3 
Cat3 =>Subcat1 

Répondre

2

Vous recherchez GroupBy et Distinct

db.Cats 
    .GroupBy(x => x.Category) 
    .Select(x => new 
    { 
     Category = x.Key, 
     SubCategories = x.Select(s => s.SubCategory).Distinct() 
    }); 
+0

Un GroupBy seul pourrait suffire dans ce cas, car il a été demandé distincte uniquement pour la catégorie et qui est implicitement atteint avec le groupement. – Edin

+0

@ Selman22 Merci – user3627847