In fase di analisi e catalogazione di un articolo, un post o un testo in generale, può tornare utile suddividere le parole contandone le occorrenze. In questo modo si può facilmente catalogare il testo associandogli una o più categorie.
Per fare questo si deve ricorrere ad una GroupBy affiancadole l'uso del metodo Count. Prima di tutto si splitta il testo in base a dei caratteri predefiniti (spazi, apici, virgole, punti, etc etc) al fine di ottenere la lista delle parole. A questo punto, si costruisce il gruppo tramite la clausola GroupBy e si genera un nuovo oggetto per ogni parola. Questo oggetto contiene la parola stessa ed il numero di volte che occorre nella frase.
var s = "stefano daniele marco andrea riccardo cristian ugo ugo stefano alessio daniele christian";
var q = from parola in s.Split(' ')
group parola by parola into newgroup
select new { k = newgroup.Key, v = newgroup.Count() };
lv.DataSource = q;
lv.DataBind();Per approfondimenti si veda:
#18 - Eseguire raggruppamenti tramite Group By con LINQ
https://www.winfxitalia.com/script/18/Eseguire-Raggruppamenti-Tramite-Group-BY-LINQ.aspx
#28 - Recuperare tutti gli oggetti di un certo tipo di una pagina ASP.NET con LINQ
https://www.winfxitalia.com/script/28/Recuperare-Oggetti-Certo-Tipo-Pagina-ASP.NET-LINQ.aspx
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Usare la libreria PredicateBuilder per eseguire query tramite Entity Framework che usano or su più campi
Utilizzare il metodo ExceptBy per eseguire operazione di sottrazione tra liste
Creare espressioni riutilizzabili nelle query LINQ per Entity Framework
Mischiare codice server side e client side in una query LINQ con Entity Framework
Utilizzare il metodo IntersectBy per eseguire l'intersection di due liste


