ASP.NET Dynamic Data - Per iniziare

by Andrea 19 May 2008 13:05

Il miglior modo per capire cosa siano i Dynamic Data è quello di provare a realizzare una semplice applicazione che ne faccia uso.

1- Creazione Dynamic Data WebSite

Creiamo da Visual Studio 2008 un nuovo WebSite, e tra i template disponibili selezioniamo Dynamic Data WebSite. Ricordo che questo template è disponibile solo installando il SP1 del Framework 3.5, o per chi abbia scaricato in precedenza il codice da questo link.

DynData_CreateWebsite

DynData_StructureIl WebSite appena creato avrà al suo interno una struttura di cartelle e file che permetteranno ai Dynamic Data di funzionare, e che permetteranno allo sviluppatore di poter personalizzare l'applicazione per adattarla alle proprie esigenze.

 

 

 2- Creazione Classe Linq To SQL

Dovremo poi creare una classe Linq To SQL (oppure Linq to Entity) da utilizzare come fonte dati per i Dynamic Data. Le classi che verranno inserite in Linq To SQL saranno poi quelle visualizzate (in automatico) nell'applicazione, e in qui sarà possibile leggere, modificare, inserire e cancellare i dati.
DynData_LinqToSqlSelezioniamo il progetto e procediamo a creare un oggetto di tipo LINQ to SQL Classes e rinominiamolo a seconda del db che andremo a interrogare (nel mio caso Northwind.dbml). Una volta creato l'oggetto, trasciniamo all'interno le tabelle che vogliamo utilizzare la LINQ to SQL.
(Nel codice da me realizzato faccio uso del database Northwind presente tra i samples di SQL Server)

3 - Configurazione - Modifica Global.asax

Per associare il datacontext di LINQ to SQL ai Dynamic Data dovremo intervenire nel file Global.asax.
Si dovrà togliere il commento e modifcare la riga di codice dove viene eseguito la registrazione del datacontext, come segue (specificando il datacontext creato da LINQ to SQL nel passo precedente):

model.RegisterContext(
    typeof(NorthwindDataContext), 
    new ContextConfiguration() { ScaffoldAllTables = true });

Impostanto a ScaffoldAllTables a True, permetterete ai Dynamic Data di interfacciare tutte le tabelle presenti nel datacontext associato. (Nei prossimi post vedremo come modificare questa parte di configurazione per interfacciare solo determinate classi).

4 - Avvio del progetto - Il gioco è fatto

Ora non rimane altro che premere F5 ed eseguire il progetto.
Il WebSite che ci si trova davanti permetterà sarà completamente navigabile, e conterrà tutte le pagine necessarie per visualizzare e modificare i dati presenti nel db (interfacciati da LINQ to SQL).
Da notare che le pagine di modifica e inserimento dei dati comprendono anche tutta la validazione necessaria.

DynData_WebSiteDynData_ProductsDynData_Product

I Dynamic Data permettono allo sviluppatore di ridurre in modo notevole i tempi di sviluppo, in quanto ci si dovrà occupare della grafica del portale, di eventuali permessi/ruoli di visibilità e di accesso, e di configurare l'applicazione in modo da permettere la visualizzazione o la modifica solo di alcuni campi presenti (e questo argomento verrà approfondito in uno dei prossimi post).

Codice Sorgente di questo esempio - Download

ASP.NET 3.5 Dynamic Data su MSDN Code Gallery

Technorati Tags: ,

Tags:

ASP .NET

Comments are closed