Antonio "tdj"

(C'è sempre un modo migliore)
posts - 312, comments - 268, trackbacks - 17

My Links

News





Tag Cloud

Article Categories

Archives

Post Categories

Image Galleries

Articoli

Blogs

Controlli WinForm free

Guide

Siti vari

Sviluppo

Data Binding in asp.net 2.0

Fino ad oggi ho utilizzato la versione 1.x  di asp.net per realizzare siti web ma da qualche tempo sto utilizzando la versione 2.0 per la realizzazione di un semplice sito per la gestione dei dati in modo tale da vedere un po' le tante novità in azione.

Ebbene, chi ha usato la versione 1.x sa che anche una semplice pagina di data entry richiede del codice per il reperimento/salvataggio dei dati da e verso il db. In asp 2.0 le cose sono cambiate... ed in meglio secondo me, infatti è possibile avere una pagina di data entry con zero righe di codice! E non si tratta del solito fumo negli occhi... o meglio non del tutto

Nello specifico ho utilizzato un XxxxDataSource in abbinamento con GridView e DetailsView. Il primo può essere paragonato ad un DataAdapter perchè si occupa di gestire i dati da e per la fonte dati, i secondi sono controlli ottimizzati per lavorare con i XxxxDataSource.

Come funziona?

E' sufficiente impostare le proprietà per gestire le 4 operazioni fondamentali, ovvero Select, Insert, Update e Delete e il gioco è fatto. Sì perchè il DetailsView, quando è collegato ad un XxxxDataSource, automaticamente richiamerà i metodi appropriati in base alle azioni dell'utente. Non solo, il DetailsView "renderizza" automaticamente i campi del data source dunque non bisogna nemmeno preoccuparsi di copiare i valori nel controllo.

La cosa, però, interessante è che usando un ObjectDataSource si può utilizzae un DL esistente per gestire i dati ed è quello che ho fatto. Niente, dataset, datatable ecc... ma solo oggetti custom
Insomma, tutta la logica di gestione dei dati è incapsulata in uno strato a sè stante che viene sfruttato appieno dai controlli asp.net. Ad esempio, impostando l'Insert del DataSource ad un metodo di classe del tipo InsertData(value As MyDataObject), il DetailsView non fa altro che creare un oggetto MyDataObject, caricarci i dati inseriti dall'utente nei vari controlli TextBox e invocare il metodo specificato. Niente male...

Per la prima volta sono stato felice di usare il designer per realizzare una pagina web di accesso ai dati!

Naturalmente non è tutto oro quello che luccica, infatti in situazioni più complesse il codice bisogna scriverlo per gestire situazioni particolari (ad esempio le immagini), inoltre non sempre i controlli hanno tutto quello che serve, ad esempio con il DetailsView non c'è modo di ottenere il record appena inserito ma occorre recuperarlo attraverso il DataSource associato, la validazione non è semplice se si usano campi FieldBound, ecc...
A parte questo, però, posso dire che la gestione dei dati, nel complesso, è decisamente migliore rispetto a prima!

powered by IMHO 1.2

Print | posted on sabato 9 dicembre 2006 19:45 | Filed Under [ ASP.NET 2.0 ]

Comments have been closed on this topic.

Powered by:
Powered By Subtext Powered By ASP.NET