Il controllo EntityDataSource è stato introdotto con il SP 1 di ASP.NET 3.5 e consente di sfruttare un object model basato su Entity Framework all'interno di un'applicazione ASP.NET, sfruttando l'approccio visuale e dichiarativo offerto dai controlli DataSource.
Un esempio base di utilizzo di questo controlli si può trovare nello script #960.
Una volta costruito il mapping ed utilizzato un EntityDataSource per estrarre dati, il passo successivo consiste nello sfruttare criteri di filtro. Se non si hanno particolari criteri da voler applicare e si vogliono solo sfruttare i parametri operando una comparazione, è sufficiente impostare la proprietà AutoGenerateWhereClause su true e poi aggiungere i parametri alla collection WhereParameters.
<asp:EntityDataSource ID="CostumerDS" runat="server" ConnectionString="name=NorthwindEntities" DefaultContainerName="NorthwindEntities" AutoGenerateWhereClause="True"> <WhereParameters> <asp:ControlParameter ControlID="Countries" Name="Country" PropertyName="SelectedValue" Type="String" /> </WhereParameters> </asp:EntityDataSource>
Nell'esempio viene fatto un filtro utilizzando un controllo di tipo DropDownList denominato Countries.
In alternativa è possibile specificare una query agendo sulla proprietà Where e scrivendo la query in formato Entity SQL, ad esempio così:
<asp:EntityDataSource ID="CostumerDS" runat="server" .. Where="it.CompanyName LIKE @CompanyName"> <WhereParameters> <asp:ControlParameter ControlID="CompanyName" Name="CompanyName" PropertyName="Text" Type="String" /> </WhereParameters> </asp:EntityDataSource>
In questo esempio viene fatto un filtro utilizzando un operatore come LIKE con un valore preso da un controllo di tipo TextBox.
Lo stesso identico discorso può essere fatto per i criteri di ordinamento, potendo agire sulle proprietà AutoGenerateOrderByClause e OrderBy. Nel primo caso deve essere specificata una collection di OrderByParameter seguendo la stessa filosofia utilizzata per i criteri di filtro, mentre nel secondo si può impostare anche un criterio fisso.
Approfondimenti
#960 - Il controllo EntityDataSource in ASP.NET 3.5 SP1
https://www.aspitalia.com/script/960/Controllo-EntityDataSource-ASP.NET-3.5-SP1.aspx
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Utilizzare EF.Constant per evitare la parametrizzazione di query SQL
Effettuare il binding di date in Blazor
Filtrare i dati di una QuickGrid in Blazor con una drop down list
Change tracking e composition in Entity Framework
Filtering sulle colonne in una QuickGrid di Blazor
Supporto ai tipi DateOnly e TimeOnly in Entity Framework Core
Utilizzare QuickGrid di Blazor con Entity Framework
Ottimizzare il mapping di liste di tipi semplici con Entity Framework Core
Persistere la ChatHistory di Semantic Kernel in ASP.NET Core Web API per GPT
Eseguire un metodo asincrono dopo il set di una proprietà in Blazor 8
Generare velocemente pagine CRUD in Blazor con QuickGrid