Quando si lavora con le liste, un'operazione molto frequente consiste nel contare il numero di elementi con una certa caratteristica. Ad esempio, si possono contare le persone raggruppate per età o per anno di nascita, oppure le automobili per marca o altro ancora. Fino a .NET 8, questa operazione può essere fatta tramite LINQ esclusivamente raggruppando prima le persone e poi contando gli elementi nei gruppi.
var x = people .GroupBy(c => c.Age) .Select(c => new {c.Key, c.Count() }) .ToList();
Sebbene questo codice sia semplice, .NET 9 introduce il metodo CountBy che rende il codice ancora più semplice. Infatti questo metodo ci fa specificare semplicemente la chiave di raggruppamento e poi torna una lista di KeyValuePair dove la chiave è il valore di raggruppamento e il valore è il numero di elementi per il valore.
var x = people .CountBy(c => c.Age) .ToList();
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Utilizzare database e servizi con gli add-on di Container App
Generare la software bill of material (SBOM) in GitHub
Creare una libreria CSS universale: i bottoni
Utilizzare i primary constructor in C#
Routing statico e PreRendering in una Blazor Web App
Ottimizzare le performance delle collection con le classi FrozenSet e FrozenDictionary
Filtering sulle colonne in una QuickGrid di Blazor
Ordinare randomicamente una lista in C#
Effettuare il refresh dei dati di una QuickGrid di Blazor
Evitare (o ridurre) il repo-jacking sulle GitHub Actions
Ordine e importanza per @layer in CSS
Installare le Web App site extension tramite una pipeline di Azure DevOps