Y a-t-il un moyen dans le groupe linq Par identifiant, trier par ordre décroissant, puis sélectionner le top 5 de chaque groupement? En ce moment j'ai un peu de code ci-dessous, mais j'ai utilisé .Take(5)
et il sélectionne évidemment le top 5 indépendamment du groupement.Linq - Grouper par ID, trier par et puis sélectionner le top 5 de chaque groupement
Items = list.GroupBy(x => x.Id)
.Select(x => x.OrderByDescending(y => y.Value))
.Select(y => new Home.SubModels.Item {
Name= y.FirstOrDefault().Name,
Value = y.FirstOrDefault().Value,
Id = y.FirstOrDefault().Id
})
J'ai utilisé votre réponse initiale avec le selectmany et cela fonctionne parfaitement. Merci pour l'aide! –
@BadDub - vous êtes les bienvenus :) –
J'attendais le temps de descendre :) –