Il rilascio del SP 1 per il .NET Framework 3.5 ha aggiunto il supporto ufficiale per l'Entity Framework ed al fine di poterlo fruttare in ambiente ASP.NET è contemporaneamente stato rilasciato un nuovo Data Source control, chiamato EntityDataSource.
L'utilizzo di EntityDataSource consente la realizzazione di applicazioni in pochi colpi di click, ma necessità di piccoli tuning per poterne migliorare le performance e l'utilizzo.
In ambiente web uno dei requisiti fondamentali è la paginazione lato server dei dati, fondamentale per non far transitare e mantenere in memoria informazioni inutili.
L'EntityDataSource supporta la paginazione lato server semplicemente impostando la proprietà AutoPage a true.
<asp:EntityDataSource ID="MyEntityDataSource" runat="server" ConnectionString="name=MyGamesDBEntities" DefaultContainerName="MyGamesDBEntities" EntitySetName="Games" EnableDelete="True" EnableInsert="True" EnableUpdate="True" AutoPage="true" AutoSort="true"/>
Questo rende possibile all'EntityDataSource, in abbinamento a controlli che supportano la paginazione, come ListView o GridView, di aggiungere correttamente il metodo query builder all'oggetto ObjectQuery<T>.
In modo del tutto simile, la proprietà AutoSort governa il funzionamento del sorting, ed è sufficiente impostarne il valore su true e dotare la propria UI di un controllo che abbia le proprietà CommandName e CommandArgument, la prima da impostare a 'sort' mentre la seconda con il nome del campo per il quale eseguire l'ordinamento.
<asp:LinkButton runat="server" ID="SortByGamesID" CommandName="Sort" CommandArgument="GamesID" Text="GamesID" />
Il precedente frammento di codice, ad esempio, potrebbe essere inserito all'interno di un ListView per determinarne l'ordinamento sulla proprietà GamesID.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Le novità di Entity Framework 8
Ottimizzare il mapping di liste di tipi semplici con Entity Framework Core
Generare velocemente pagine CRUD in Blazor con QuickGrid
Eseguire un metodo asincrono dopo il set di una proprietà in Blazor 8
Change tracking e composition in Entity Framework
Effettuare il binding di date in Blazor
Utilizzare EF.Constant per evitare la parametrizzazione di query SQL
Utilizzare QuickGrid di Blazor con Entity Framework
Persistere la ChatHistory di Semantic Kernel in ASP.NET Core Web API per GPT
Usare le navigation property in QuickGrid di Blazor
Filtrare i dati di una QuickGrid in Blazor con una drop down list