La nostra prima applicazione web con ASP.NET
Questo è il primo di una serie di articoli orientati allo sviluppo di applicazioni web con ASP.NET
Il percorso è pensato per tutti gli studenti che si avvicinano al mondo .NET per la prima volta.
Cosa vedremo oggi?
- .NET Framework
- ASP.NET
- Anatomia di una pagina .aspx
- Tool di sviluppo
- La prima applicazione
Il .NET framework è l’ambiente di Microsoft per la creazione, la distribuzione e l’esecuzione di applicazioni di nuova generazione e servizi web. Il framework è stato progettato per fornire un ambiente di programmazione orientato agli oggetti e di esecuzione del codice.
Il .NET Framework presenta due componenti principali:
- Il Common Language Runtime, che gestisce il codice in fase di esecuzione, fornendo servizi di base quali gestione della memoria, gestione di thread e servizi remoti.
- La Base Class Library, un insieme completo orientato agli oggetti di tipi riutilizzabili che possono essere impiegati nello sviluppo delle applicazioni, da quelle tradizionali della riga di comando o con interfaccia utente grafica a quelle basate su applicazioni ASP.NET, quali Web Form e servizi Web XML.
Sotto trovate una rappresentazione schematica del posizionamento del .NET Framework.
ASP.NET è una libreria ovvero un insieme di classi (oggetti) che possono essere istanziate utilizzando un qualsiasi linguaggio compatibile con Common Language Runtime (CLR), come VB.NET e C#.
Il risultato di un’applicazione .NET viene eseguito dal runtime (il CLR), che traduce le richieste fatte alle classi istanziandole e poi richiamandone proprietà, metodi ed eventi, in chiamate dirette verso il server web (IIS –Interner Information Server- oppure il sistema operativo).
A differenza delle pagine html, le pagine ASP.NET introducono il concetto di elaborazione server side: quando l’utente richiama una pagina ASP.NET (che ha estensione .aspx), ciò che viene visualizzato dal browser è il risultato dell’elaborazione della pagina .aspx da parte del server, il quale la restituisce in una forma che il client/browser può renderizzare.
Una pagina .aspx è composta dalle seguenti sezioni (in realtà possono non esserci tutte):
- Page layout: lo scheletro della pagina, inclusi controlli lato server, testo, e tag HTML
- Code section: gestori dei controlli server side della pagina; può essere inline o separata
- Page directives: impostazione dell’ambiente, indicazione del linguaggio utilizzato, …
Il tool di sviluppo che utilizzeremo in tutto il percorso è Visual Studio 2008, scaricaribale gratuitamente per tutti gli studenti di informatica tramite il programma DreamSpark oppure l’abbonamento MSDNAA della propria università.
Una volta avviato Visual Studio, passiamo subito a creare un nuovo sito web. I template a nostra disposizione sono un ASP.NET website, un ASP.NET webservice o un empty website.
Un ASP.NET website non è altro che un template già pronto che crea una pagina di default e la struttura che accoglierà la nostra applicazione. Un ASP.NET web service consente invece di avere immediatamente a disposizione un servizio in cui andare a scrivere il codice da esporre come web service. L’empty website non è altro che lo scheletro di un sito web vuoto.
Ciò che andiamo a creare è una struttura di progetto che può essere appoggiata direttamente sul nostro file system, su un sito http piuttosto che su un sito ftp.
Una volta creata la directory all’interno della quale Visual Studio posizionerà il progetto, scegliamo come linguaggio C#. Questa è la visualizzazione che l’IDE ci propone per andare a gestire il nostro progetto.
Sulla sinistra troviamo l’elenco dei controlli (la classica Toolbox), nella zona centrale l’editor della nostra pagina e sulla destra il Solution Explorer, ovvero la nostra soluzione. L’editor consente di scrivere in formato xhtml per default. L’intellisense ci aiuta mostrando quelli che sono i tag e i controlli ASP.NET disponibili mentre scriviamo il nostro codice; per ogni tag abbiamo l’intero elenco delle proprietà impostabili. E’ possibile spostarsi in modalità Design per disegnare la nostra pagina con un editor di tipo WYSWYG.
La nostra prima applicazione ASP.NET estrae dei dati da un database e li visualizza in una pagina web.
L’idea di ASP.NET è quella di avere due tipi di controlli: quelli che consentono di recuperare delle informazioni da un database di SQL Server o di Access piuttosto che da una collection di oggetti o da una sorgente dati xml, e quelli che permettono la visualizzazione grafica di queste informazioni.
Trasciniamo un controllo SqlDataSource dalla sezione Data della Toolbox alla pagina. Scegliamo “Configure Data Source” dal menu “Common SqlDataSource Tasks”:
Nella finestra di dialogo “Configure Data Source” scegliamo di creare una nuova connessione a database. In “Choose Data Source”, scegliamo “Microsoft SQL Server” come data source e “.NET Framework Data Provider for SQL Server” come data provider:
Nella finestra di dialogo “Add Connection” inseriamo la stringa “localhost\sqlexpress” (oppure solo “localhost” se si sta usando la versione non express di SQL Server) nella casella “Select or enter a server name”, quindi selezioniamo “Use Windows Authentication”. Inseriamo “pubs” in “Select or enter a database name”:
Nella successiva finestra di dialogo selezioniamo “titles” dall’elenco a discesa “Name”. Nella casella “Columns” scegliamo “title”, “price” e “notes”. Abbiamo terminato la configurazione del controllo SqlDataSource.
Trasciniamo un controllo GridView nella pagina, sotto il controllo SqlDataSource. Associamo il controllo GridView al controllo SqlDataSource selezionando SqlDataSource1 dall’elenco “Choose Data Source” del menu “GridView Tasks”.
Scegliamo “Auto Format” dal menu “GridView Tasks” per applicare il formato che più ci piace a GridView.
Quello che stiamo facendo è proprio l’operazione di binding: legare i dati estratti dal controllo SqlDataSource al controllo di visualizzazione.
Premete Ctrl+F5 e ditemi cosa viene visualizzato
Nel prossimo appuntamento vedremo:
- Pagine Master e temi
- Code behind
- Accesso ai dati
STAY TUNED!

Ben fatto!