Una delle funzioni più comuni nelle Single Page Application è quella di dover mostrare una lista di dati in una tabella. Spesso questa lista è lunga e mostrare tutti i record contemporaneamente rischia di rendere la tabella illegibile (oltre che degradare le performance del browser). Paginare i dati è la soluzione più ovvia e per implementare questa funzione in breve tempo ci vengono in aiuto i metodi Skip e Take della libreria JSLINQ che funzionano esattamente come gli omonimi metodi di LINQ in C#. Supponendo di voler mostrare i dati 10 record alla volta, dobbiamo usare il seguente codice.
var page = JSLINQ(people) .Skip(pageIndex * 10) .Take(10).ToArray();
Questo codice prende in input una lista di persone e salta i primi n record (tramite il metodo Skip) per poi prendere i successivi dieci (tramite il metodo Take). Se il valore di pageIndex è 0, allora non viene saltato alcun record e quindi vengono estratti i primi dieci. Se il valore di pageIndex è 1, vengono saltati i primi dieci record ed estratti i successivi dieci e così via.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Eseguire query manipolando liste di tipi semplici con Entity Framework Core
Ottimizzare la latenza in Blazor 8 tramite InteractiveAuto render mode
Utilizzare la funzione EF.Parameter per forzare la parametrizzazione di una costante con Entity Framework
Estrarre dati randomici da una lista di oggetti in C#
Usare i servizi di Azure OpenAI e ChatGPT in ASP.NET Core con Semantic Kernel
Esportare ed analizzare le issue di GitHub con la CLI e GraphQL
Eseguire un metodo asincrono dopo il set di una proprietà in Blazor 8
Creazione di plugin per Tailwind CSS: espandere le Funzionalità del Framework
Utilizzare Azure Cosmos DB con i vettori
Gestione degli stili CSS con le regole @layer
Come EF 8 ha ottimizzato le query che usano il metodo Contains
Persistere la ChatHistory di Semantic Kernel in ASP.NET Core Web API per GPT