Il Microsoft .NET Framework è in continua evoluzione ed ha raggiunto la versione 4.0 accompagnato da moltissime novità. In questa sessione andremo in dettaglio per ciò che riguarda l'ultima versione di ASP.NET 4.0, ponendo il focus sulle nuove funzionalità e sui cambiamenti più importanti. Con esempi pratici vedremo come questa nuova versione agevolerà lo sviluppatore nel realizzare le proprie applicazioni. Maggiore controllo del codice prodotto, SEO, nuovi template project, Script Loader, Client Data Access e migliorie ai controlli esistenti, sono solo alcuni degli argomenti che verranno trattati.
1. What's new in ASP.NET 4.0 Andrea DottorMicrosoft MVP ASP.NET
2. Agenda ASP.NET 4.0 core services (Visual Studio 2010, IIS7) SEO Features Maggiore controllo del HTML Routing ASP.NET AJAX
3. Project Template Changes Empty Web Application Template Contiene solamente il file Web.Config Web Application and Web Site Project Templates Crea un'applicazione web con alcune pagine, e con già le funzionalità di membership, roles e profiles che fanno uso di SQL Express Le pagine presenti fanno uso di master-page Hanno una grafica di base
4. Web.config File Minification Nel Framework .NET 4.0 la maggior parte della configurazione è stata spostata nel machine.config Il file Web.config eredita le configurazioni dal machine.config Il file Web.config conterrà le configurazioni personalizzate, o modifiche a quelle di default
5. Web.config Transformation Possibilità di applicare delle trasformazioni al web.config in fase di pubblicazione XML Document Transform (XDT) Trasformazione applicata solo in fase di pubblicazione E’ possibile specificare un XDT per ogni configurazione di compilazione Web.debug.config Web.release.config
7. Auto-Start Web Applications Possibilità di “avviare” l’applicazione in modo automatico Vengono eseguite delle chiamate che causano l’avvio dell’applicazione e mantengono il processo sempre attivo e pronto Evita il problema che il primo client deve attendere l’avvio dell’applicazione Valido per le applicazioni che eseguono parecchie elaborazioni all’avvio, come per esempio nel metodo Application_Start
8. Auto-Start Web Applications Con ASP.NET 4 hostato in IIS 7.5 Richiede la modifica del file applicationHost.config che si trova in C:indowsystem32netsrvonfigpplicationHost.config Nell’applicationPools: startMode=“AlwaysRunning” Nel site dove si vuole abilitare:serviceAutoStartEnabled="true"
9. “warming up” Web Applications E’ possibile specificare una classe che esegua tutte le operazione da svolgere al primo caricamentoserviceAutoStartProvider=“PreWarmMyCache“ IIS non accetterà richieste fino a quando il precaricamento non sarà concluso La classe da creare dovrà implementareIProcessHostPreloadClient public void Preload(string[] parameters)
11. Auto-Start Web Applications Il team di IIS ha rilasciato ‘Application Warm-Up Module’ per esegure il warmup delle applicazioni Non richiede la modifica manuale dei file di configurazione Si configura tramite tool grafico Si ha la possibilità di specificarele chiamate da eseguire per avviare l’applicazione
12. SEO Features - Meta Tags Nella Page sono state aggiunte le proprietà per impostare MetaKeywords e MetaDescription Page.MetaKeywords Page.MetaDescription E’ possibile valorizzarle direttamente nel markup della pagina (nella direttiva di pagina)
13. SEO Features - RedirectPermanent Esecuzione di un redirect permanente verso un url specifico HTTP Status Code of 301 – Moved Permanently NOTA: Il classico redirect (Response.Redirect) vieneeseguito con codice 302 (temporary redirect)
14. SEO Features - RedirectPermanent Possibilità di eseguire il redirect applicando le regole del routing RedirectToRoute -> 302 RedirectToRoutePermanent -> 301
15. Enabling View State for Individual Controls Possibilità di gestire il comportamento del ViewState per ogni singolo controllo ViewStateMode: Enabled: ViewState abilitato per questo controllo e per I controlli figli che hannoViewStateModevalorizzato a Inherit (o non specificato) Disabled: ViewState disabilitato Inherit: Indica al controllodiutilizzareilvalorediViewStateMode del controllo padre Di default ilViewState è abilitato
16. Setting Client IDs Con l’uso della proprietà ClientIDMode sarà possibile gestire la valorizzazione del ClientID. Permette di ridurre la lunghezza degli IDctl00_ContentPlaceHolder1_ParentPanel_NamingPanel1_TextBox1 Agevola l’utilizzo degli ID negli script client È più immediato scrivere $get(“TextBox1”) invece di$get(“ctl00_ContentPlaceHolder1_ParentPanel_NamingPanel1_TextBox1”)
17. Setting Client IDs La proprietà ClientIDMode può valere: AutoID: Comportamento come l’attuale Static: La proprietàClientIDverràvalorizzata come specificata in ID Predictable: Concatenal’ID del controllo a quello del parent. Puòessereutilizzatoassieme a ClientIDRowSuffix per concatenareproprietàdioggetti in binding. Inherit: Indicadiutilizzare lo stessovalore che è impostato nelcontrollo padre.
18. Routing in ASP.NET 4 Introdotto già in ASP.NET 3.5 SP1 Migliorato in ASP.NET 4.0, introdotte nuove classe che facilitano l’utilizzo: PageRouteHandler HttpRequest.RequestContext, Page.RouteData RouteUrlExpressionBuilder, RouteValueExpressionBuilder RouteParameter
21. Prossimi Meeting 7/5/2010 - Client & Code Tools Track Davide Senatore - WPF Dashboards with Prism Davide Vernole - Test Driven Development & Continuous Integration, codice di qualità con Visual Studio 2010 4/6/2010 - Visual Studio & Tools Track Andrea Boschin - Application prototyping con SketchFlow Davide Vernole - MSF Agile 5, la proposta Microsoft per la metodologia Scrum
22. Microsoft Ajax Library – CDN Permette di scaricare gli script Microsoft AJAX Library e JQuery I contenuti della Microsoft Ajax CDN sono mantenuti in cache da server sparsi in giro per il mondo Si ha una maggiore velocità di download in quanto verranno recuperati dal server più vicino Supporta htts <script src="http://ajax.microsoft.com/ajax/beta/0911/Start.js" type="text/javascript" />
23. Microsoft Ajax Library – Script Loader Permette di scaricare in un secondo momento gli script necessari Permette di caricare solamente gli script necessari Recupera gli script anche dalla CDN Microsoft Ajax Content Delivery Network Caricamento+veloce Solo script necessari Referenziare soloStart.js
24. Microsoft Ajax Library –DataView Possibilità di eseguire il bindig di oggetti/dati direttamente lato client
25. Microsoft Ajax Library –DataContext Viene usato per eseguire il bindig degli oggetti lato client Supporta anche gli ADO.NET Data Services E’ bidirezionale (lettura+scrittura)