DataSource personalizzati

di: Giuseppe Marchi     04 Luglio 2007

I DataSource di ASP.NET 2.0 sono una nuova famiglia di controlli Web in grado di permettere agli sviluppatori di utilizzare una nuova tecnica di binding dei dati, il databinding dichiarativo.

Tramite questa funzionalità possiamo infatti legare una fonte di dati ad un controllo di presentazione (per esempio una GridView o una DataGrid) direttamente nella pagina Web, senza quindi dover scrivere il codice di databind nel file di code-behind.

Un DataSource control, in parole povere, non è altro che un archivio di informazioni che possono essere lette, modificate o cancellate attraverso l'esecuzione di metodi pre-confezionati.

Le informazioni esposte, possono essere prelevate da una qualsiasi fonte di dati, come può essere un database SQL Server o MS Access, la site map del proprio sito Web, file XML o collezioni di oggetti di business personalizzate.

I controlli DataSource già presenti all'interno del Framework sono:

  • SqlDataSource - Che permette di prelevare informazioni da un qualsiasi database via ADO.NET (quindi SQL, OLEDB, ODBC o Oracle).
  • AccessDataSource - Che permette di prelevare informazioni da un database MS Access.
  • ObjectDataSource - Che permette di prelevare informazioni da proprie collezioni di oggetti di business.
  • XmlDataSource - Che permette di prelevare informazioni da file XML.
  • SiteMapDataSource - Che permette di prelevare informazioni da file .sitemap.

Ogni controllo di questo tipo eredita dalla classe DataSourceControl. Proprio per questo può essere associato ad altri controlli per effettuare il DataBind dei dati attraverso la proprietà DataSourceID; tale proprietà è stata aggiunta in tutti i controlli di presentazione come Repeater, DataGrid, DataList e GridView. Ecco un esempio d'uso del controllo AccessDataSource:

Listato 1. Esempio d'uso di un DataSource

<asp:AccessDataSource ID="AccessDataSource1" runat="server"
      DataFile="~/App_Data/database.mdb"
      SelectCommand="SELECT * FROM [Tabella]" />

<asp:GridView ID="GridView1" DataSourceID="AccessDataSource1" runat="server" AutoGenerateColumns="False" DataKeyNames="ID" >
  <Columns>
    <asp:BoundField DataField="ID" HeaderText="ID" InsertVisible="False" ReadOnly="True" SortExpression="ID" />
    <asp:BoundField DataField="Titolo" HeaderText="Titolo" SortExpression="Titolo" />
  </Columns>
</asp:GridView>

Guide ASP.Net

Guida Windows Azure Code Snippets

Le migliori pratiche per far girare le applicazioni "in the cloud",...

Guida ASP.NET MVC Best Practices

Un workflow dettagliato e ricco di suggerimenti pratici per...

Guida ASP.NET Starter Kit

Un modo semplice per imparare ad utilizzare le tecnologie Microsoft...

Altre guide

Newsletter @Microsoft Dev

Ogni giovedì, direttamente nella tua e-mail: articoli, guide, tutorial e script ASP, ASP.Net, SQL server e IIS.

Iscriviti alla newsletter

Altre newsletter

Corsi in aula

Amministratore di Reti Windows Server 2008

20 Febbraio 2012 a Milano
Disponibilità: 5 Posti

Nessun corso previsto