Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Le novità di ASP.NET 2.0

Introduzione alla seconda versione del framework di casa Microsoft
Introduzione alla seconda versione del framework di casa Microsoft
Link copiato negli appunti

Finalmente ci siamo! La versione finale del Framework .Net 2.0 è finalmente disponibile. E come ogni nuova relese che si rispetti porta con sè un congruo numero di novità.

Novità di cui si è parlato a lungo in questi mesi sia grazie ai vari reportage di eventi e corsi tenuti dalla Microsoft sia per le prove che chiunque, o quasi, ha potuto fare grazie alle innumeravoli beta e ctp version che sono state rilasciate. Rispetto alla versione 1.x la casa di Redmond è andata incontro agli sviluppatori chiedendo loro, attraverso l'uso dei software ancora in stato embrionale, cosa ne pensassero, quali fossero i punti di forza e quelli di debolezza. Abbiamo quindi a disposizione uno strumento scritto a più mani per essere quanto più possibile facile da usare ed allo stesso tempo potente. Da ricordare anche che il runtime è retrocompatibile con le versioni precedenti.

Per facilitare l'apprendimento e l'uso del nuovo ASP la Microsoft ci fornisce il Visual Web Developer (da adesso VWD) e Sql Express 2005. Il primo è un'evoluzione di Web Martrix, ma rispetto a quest'ultimo non è semplice IDE per la progettazione bensì una versione ridotta di Visual Studio 2005 e porta con sè moltissime caratteristiche. Ultima arrivata la possibilità di effettuare il Refactoring tramite la registrazione, gratuita, del software della DevExpress che la Microsoft ha reso disponibile gratuitamente dopo le proteste dei programmatori Vb.Net per la mancata implemetazione dello stesso in Visual Basic 2005, funzione presente invece in Visual C#.

Sql Express 2005 invece non è il semplice successore di MSDE ma è un strumento completo (le funzioni di Full-Text Search e di Report saranno rilasciata nel 2006) in grado di soddisfare le comuni esigenze a costo zero. Inoltre a differenza di MSDE avrà un'interfaccia grafica ed una limitazione nelle dimensioni del file, nel numero di Cpu e di Ram utilizzabili e non sul numero di connessioni.

SqlExpress 2005 viene installato insieme ad SDK per poter utilizzare i QuickStart, esempi e struttura delle classi dei controlli, delle novità e delle nuove funzionalità. Vi è pure una parte interamente dedicata a risolvere i problemi più comuni che si incontrano nello sviluppo di una applicazione sia Web che Desktop. Un altra sezione è dedicata nello specifico ai Web Services. Solamente disponibile in lingua Inglese la documentazione verrà successivamente tradotta anche nella nostra lingua.

ASP.Net 2.0 non è un semplice aggiornamento ma è una vera rivoluzione. Benchè mantenga tutti i vecchi server control, anche se alcuni solo per la retrocompatibilità, ne aggiunge ben 50.

Nello scrivere questi nuovi controlli la Microsoft ha tenuto fede ad una sua promessa: creare applicazione Zero Code. Ovvero la possibilità attraverso l'uso di VWD o VS 2005 di implementare tutto con dei semplice Drag&Drop. Sebbene con questa soluzione sia impossibile, soprattutto per i progetti di una certa dimensione, produrre qualcosa di performante e manutenibile a tutti farà sicuramente piacere vedere come sia i nuovi che i vecchi controlli siano stati rivisti per un utilizzo più diretto.

Inoltre è stata introdotta un'interfaccia che permette di impostare le più importanti opzioni del sito e di gestire sempre in maniera visuale gli utenti con specifiche autenticazioni ed autorizzazioni. Le modifiche al metodo di compilazione, alla gestione delle risorse e la scomparsa del Code behind a favore del Code file con l'utilizzo di default del Code Inline con annesso Intellisense in VWD da un lato faciliterà la scrittura di nuove pagine dall'altro ci renderà quasi impossibile convertire i nostri vecchi progetti. Soprattutto se inseriamo lato server del codice Html visto che il nuovo framework genererà del codice Xhtml. Cosa che costringerà buona parte di noi a dovere finalmente passare al nuovo standard del W3C.

Il controllo più pubblicizzato è stato senza ombra di dubbio il GridView, sostituto del DataGrid. Rispetto a quest'ultimo espone dei metodi di modifica, aggiornamento e cancellazione di dati più diretta.

La sua visualizzazione all'utente finale può essere personalizzata in fase di dichiarazione e non più intercettata per essere sovrascritta. L'ordinamento e la paginazione poi non avranno più bisogno di aver associato un comando e il relativo codice ma sono presenti di default. L'inserimento al suo interno di altri controlli server, vero incubo del DataGrid, sarà una cosa abbastanza semplice visto che il GridView ha una logica di programmazione per Celle e non per Colonne. Dato poi il miglior motore di rendering il GridView risulta essere poi più veloce. Al GridView può essere associato un controllo DetailView per la visualizzazione, l'aggiornamento e la cancellazione dei record collegati il tutto con un numero di righe di codice limitato.

Per il DataBinding non possiamo non citare l'introduzione del comando <%# %> che ci permetterà di associare una fonte dati in maniera dichiarativa all'interno della pagina stessa, evitando così l'annoso problema della creazione a monte del controllo ed il suo successivo inserimento tramite PlaceHolder. Per l'upload di file sul server abbiamo a disposizione FileUpload assenza che nelle precedenti versione costringeva ad utilizzare l'istruzione Html di input.

Per uno sviluppo più rapido sono stati inseriti dei controlli appositi per la gestione degli utenti, tutti i controlli Login si occupano della classica routine dell'iscrizione, autenticazione, autorizzazione, recupero e cambio della password nonché della gestione dello stato e del nome utente della sessione attuale. Con la certezza che questo delicatissimo processo sia sicuro anche quando usato da programmatori non avvezzi nelle tecniche di protezione da attacchi Sql Injection e similari.

Dimostrando di avere compreso appieno le problematiche incontrate nello sviluppo con ASP.Net, nonché i suoi limiti, ci vengono proposti dei controlli creati per delle specifiche occasioni. Per esempio per i comandi di validazione abbiamo adesso delle proprietà come ValidateEmptyText che validerà il campo anche se non ha mai ricevuto il Focus, da qui il SetFocusOnError che posizionerà l'utente sul campo incriminato. Inoltre abbiamoValidationGroups che ci consentirà di poter inserire più form nella stessa pagina senza che i vari controlli vadano in errore. Controlli come MultiView con il quale potremo lasciare visibile un solo View per volta semplicemente impostandolo come attivo. Per finire con il controllo Wizard con il quale potremo creare delle pagine che non hanno nulla da invidiare ai complessi Setup delle applicazioni Desktop.

Anche la gestione dell mappa del sito è stata facilitata attraverso in controlli di Sitemap e di Navigation con cui poter creare menu, collegamenti interni e briciole di pane partendo da dei semplici file XML.

Così come per l'utilizzo di Xhtml si viene indirizzati verso l'uso dei CSS per i layout del sito o perlomeno per la sua visualizzazione. C'è da ricordare però che tuttora i browser non supportano appieno tutte le funzionalità dei CSS e non è ancora chiaro quale sarà il supporto futuro in IE 7.0. Ciò nonostante la possibilità di personalizzazione delle nostre nuove pagine non avrà rivali nel mondo web. Avremo la possiblità di creare delle vere e proprie Skin intercambiali nelle quali poter definire e ridefinire ogni singola cosa, dalla cella di una specifica tabella al colore di errore di un controllo di validazione interno ad un GridView. In questo modo le nostre pagine saranno più leggibili e per la modifica del layout grafico non dovremo fare altro che modificare i file presenti nella cartella dei temi.

Ma la personalizzazione non si è fermata qui. Sono state introdotte le Master Page, dei veri e propri Template che tramite i contentplaceholder permetteranno l'inserimento di controlli, lato server e non, per poter dare una struttura comune a tutte le pagine del sito e della sezione in questione. E chiudiamo in bellezza con i WebParts che renderanno possibile al nostro visitatore la personalizzazione del layout del sito, lo renderanno libero di poter spostare ogni singolo oggetto da una parte all'altra del browser, di poterlo allargare o chiudere, di poterne richiedere degli altri o di elimarli del tutto.

Tra le novità che ancora non sono state rilasciate non possiamo dimenticare il progetto nome in codice ATLAS che aggiungerà ai controlli le funzionalità AJAX, per chi non lo sapesse AJAX e l'acronimo di Asynchronous JavaScript and XML. In realtà non siamo di fronte ad una nuova tecnologia ma ad un utilizzo nuovo di tecnologie esistenti. Questo tipo di utilizzo è stato reso famoso al grande pubblico dal servizio email di Google (www.gmail.com) . Visto la rapida espansione e la presenza di un progetto per la sua implentazione anche sotto ASP.Net gli sviluppatori del Framework hanno deciso di renderne disponibile una versione ufficiale.

Ti consigliamo anche