di: Giuseppe Marchi 09 Aprile 2008
Con l'aggiunta delle strutture secondo il pattern Template, la selezione di informazioni sulla base di dati risulta ancora più semplice.
Listato 9. Esempio di utilizzo del mapping
CustomerReader reader = new CustomerReader();
List<Customer> customers = reader.GetAll();
GridView1.DataSource = customers;
GridView1.DataBind();
Ora il nostro Data Access Layer è quasi pronto per l'utilizzo, manca solamente la definizione di tutte le entity proprie del Domain Model dell'applicazione e la relativa definizione di tutte le classi concrete di mapping su tali entità e di lettura.
Per semplificare la gestione delle entity (e non solo), soprattutto all'interno di progetti di grosse dimensioni, risulta spesso molto utile appoggiarsi ad un ORM. Nel nostro caso, solo per la generazione della classi entità mappate sulla struttura della base di dati, ci potrebbe essere d'aiuto SubSonic, un progetto open-source che a partire dalla definizione di un database, genera in automatico entity e classi manager da inserire all'interno del proprio progetto.
Pensare che tutto quello che abbiamo visto fin'ora lo può fare in automatico "qualcun altro" è sicuramente gratificante. Esattamente, un ORM, definisce il mapping tra gli oggetti della propria applicazione e quelli presenti all'interno della base di dati, fornendo anche tutti i metodi per l'accesso e la modifica delle informazioni. Risulta quindi ovvio che l'utilizzo di uno strumento del genere nei propri progetti semplifica notevolmente il lavoro, soprattutto per piccole applicazioni da dover sviluppare in poco tempo (quindi come nella maggior parte dei casi).
Per quanto riguarda invece, progetti di grosse dimensioni architetturali, è sempre bene affiancare ad un ORM una propria gestione personalizzata del DAL dell'applicazione; così facendo si può avere il controllo completo sull'accesso ai dati, soprattutto per quanto riguarda le performance dell'applicazione, e allo stesso tempo è possibile avvalersi di uno strumento potente che evita errori di base sui nomi e soprattutto la stesura di una grossa quantità di righe di codice.
L'accesso ai dati richiede particolare attenzione nello sviluppo di applicazioni Web (e non) e mantenere questi meccanismi in un livello a parte è vantaggioso, specie per lo sviluppo degli altri strati dell'applicazione come l'interfaccia utente.
Rispettare precisi pattern architetturali, rende ancora più facile esporre funzionalità agli altri livelli, diminuire la scrittura di codice ripetitivo ed ottenere applicazioni più flessibili.
Guida Windows Azure Code SnippetsLe migliori pratiche per far girare le applicazioni "in the cloud",... |
Guida ASP.NET MVC Best PracticesUn workflow dettagliato e ricco di suggerimenti pratici per... |
Guida ASP.NET Starter KitUn modo semplice per imparare ad utilizzare le tecnologie Microsoft... |
Ogni giovedì, direttamente nella tua e-mail: articoli, guide, tutorial e script ASP, ASP.Net, SQL server e IIS.
Iscriviti alla newsletter
|
|
Corso Progettazione database11 Maggio 2012 a Milano |
|
|
Amministratore di Reti Windows Server 200811 Giugno 2012 a Milano |
|
Nessun corso previsto |