ASP.NET 3.5 Extension, Futures, MVC Preview 2, Extension Preview, Data Service, Dynamic Data, Silverlight, Dinamic Language, ADO.NET Sync Service e Sync Framework
Titolo breve :-)
Questo post cerca di individuare la situazione attuale di metà aprile rispetto alle mille novità per gli sviluppatori web (e non solo) che ci attendono nei prossimi giorni/settimane/mesi. Come sempre accade quando possiamo dare un'occhiata alle varie CTP e Beta, le cose cambiano, e molto, da versione a versione, e, spesso, la prima cosa che viene modificata è la pacchettizzazione.
Cerco di fare luce sui vari componenti disponibili e la loro "pacchettizzazione":
Luglio 2007
Esce ASP.NET Futures (July 2007 CTP appunto)
L'idea è quella di inserire nel pacchetto le aggiunte future ad ASP.NET rispetto a quanto già previsto nella versione 3.5.
I componenti di questo download sono:
-
AJAX History Management: funzionalità che sfruttando le librerie AJAX consentono di gestire la "History" del browser. Attualmente questo componente è nel nuovo pacchetto ASP.NET 3.5 Extension Preview di Dicembre 2007 (vedi sezione apposita). E' quindi diventata obsoleta queta versione
-
Silverlight Control for ASP.NET: espone un componente MediaPlayer pilotabile da Javascript e un componente Silverlight per contenere XAP della versione 1.0 di Silverlight. Anche questo componente è obsoleto ed esiste una nuova versione sia in ASP.NET 3.5 Extension Preview Dic 2007, sia in versione ancora più aggiornata nel Silverlight Tools Beta1 for Visual Studio 2008. Vedi sezione apposita
-
ASP.NET Dynamic Data: l'idea è quella di generare in automatico (e ovviamente poter poi personalizzare il tutto) le pagine di gestione dei dati; si parte dalla definizione di un modello (LINQ to SQL e XML sono nativi) per creare in automatico le pagina di inserimento, modifica, cancellazione, lista, dettaglio e master/detail partendo proprio dalla definizione dello schema del modello. Esiste una nuova versione (3.6) in ASP.NET 3.5 Extension Preview Dic 2007.
-
ASP.NET Application Services: con ASP.NET 3.5 rilasciato è possibile agganciare da pagina AJAX (tramite lo ScriptManager) e da client Windows Form e WPF i servizi applicativi esposti da ASP.NET: Membership, RoleManager, Profile. In pratica l'idea è esporre tramite servizi (è un Handler ASP.NET che se ne occupa) le componenti di Autenticazione (Login e appartenenza ai ruoli) e il Profilo dell'utente, consentendo a client diversi (primo fra tutti un client web basato su AJAX) di accedervi.
In questo componente vengono esposti altri due servizi per aggiungere servizi di Live Search e SiteMap.
-
Dynamic Language Support for ASP.NET: IronPython e Managed JScript diventano linguaggi utilizzabili in ASP.NET
Questo componente è ancora disponibile a partire da questo link: http://www.asp.net/downloads/futures/. Perchè lo indico visto che il componente è obsoleto ? Perchè ci sono alcune cose che non sono nei nuovi "package" scaricabili. Ad esempio il supporto a linguaggi dinamici e gli application services non ci sono nelle nuove pacchettizzazioni.
Dicembre 2007
Esce ASP.NET 3.5 Extension Preview (Dec 2007 CTP)
Anche in questo caso troviamo molti componenti ancora attuali.
I componenti di questa versione sono:
-
AJAX History Management: funzionalità che sfruttando le librerie AJAX consentono di gestire la "History" del browser. Questa è l'ultima versione (ad oggi ovviamente)
-
Silverlight Control for ASP.NET: espone un nuovo componente MediaPlayer pilotabile da Javascript e un nuovo componente Silverlight per contenere XAP della versione 1.0 e 2.0 (novità) di Silverlight. Anche questo componente è però obsoleto ed esiste una nuova versione ancora più aggiornata nel Silverlight Tools Beta1 for Visual Studio 2008. Vedi sezione apposita
-
ASP.NET Dynamic Data: l'idea è quella di generare in automatico (e ovviamente poter poi personalizzare il tutto) le pagine di gestione dei dati; si parte dalla definizione di un modello (LINQ to SQL e XML sono nativi) per creare in automatico le pagina di inserimento, modifica, cancellazione, lista, dettaglio e master/detail partendo proprio dalla definizione dello schema del modello. E' una nuova versione che utilizza la versione 3.6.0.0 della System.Web.Extension. Quando create un progetto dai template di Visual Studio occhio a scegliere la versione corretta: partite da un progetto Dynamic Data per ottenere la configurazione nel config che, sfruttando il classico, bindingRedirect porta all'utilizzo di questa versione al posto della 3.5 inclusa nel .NET Framework
-
ASP.NET Application Services: non è inclusa in questa versione quindi è ancora valida la precedente July 2007 CTP.
-
Dynamic Language Support for ASP.NET: non è inclusa in questa versione quindi è ancora valida la precedente July 2007 CTP.
-
ADO.NET Data Service: anche questo componente sfrutta la versione 3.6.0.0 della System.Web.Extensions (occhio quindi alla configurazione nel web.config, si può usare il template apposito di VS per creare nuovi progetti). L'idea in questo caso è esporre un modello basato su ADO.NET Entity Framework (da installa a parte) tramite servizi che consentono l'interrogazione e l'aggiornamento dei dati. Il modello esposto da questi servizi sfrutta REST per lo scambio delle informazioni da e verso i client: Nella libreria è presente uno script per interagire con i servizi da pagina AJAX-based
-
-
ASP.NET MVC Framework: ne parliamo nella prossima sezione (più avanti) in quanto a febbraio 2008 è uscita una nuova versione.
Questo componente si scarica da http://www.microsoft.com/downloads/details.aspx?FamilyId=A9C6BC06-B894-4B11-8300-35BD2F8FC908&displaylang=en.
Febbraio 2008
Una nuova versione della Preview, ma solo della parte MVC. Il componente si chiama ASP.NET MVC Preview 2 e si scarica da http://www.microsoft.com/downloads/details.aspx?FamilyId=38CC4CF1-773A-47E1-8125-BA3369BF54A3&displaylang=en
L'idea è quella di poter sfruttare il pattern standard Model View Controller anche nel mondo ASP.NET. Questo componente installa un nuovo handler che redirige le richieste per i vari URI direttamente al Controller. Il Controller effettua le operazione sul Model (che può essere creato con LINQ to SQL, ADO.NET Entity Framework o dai più classici BIZ e DAL) e tramite il metodo RenderView invoca la View che presenta i dati all'utente.
Il secondo pacchetto uscito a febbraio 2008 prende il nome di Silverlight Tools Beta 1 for Visual Studio 2008 (link incluso). Comprende una nuova versione del controllo Media Player (uscito nella July CTP) e del controllo Silverlight (supportata la 2.0). E' una nuova versione rispetto alle altre due citate in questo post che aggiunge anche:
- Silverlight 2 Beta 1
- Silverlight 2 SDK Beta 1
- KB949325 for Visual Studio 2008
- Silverlight Tools Beta 1 for Visual Studio 2008
Si installano due nuovi template in Visual Studio 2008, un generatore di codice XAML e il pieno (quasi :-)) supporto per Intellisense. Il debug funziona abbastanza bene. Per adesso troviamo il supporto per chiamate native a Web Service.
Varie
Olte a ADO.NET Data Service, in beta, troviamo SQL Server Data Service (in Beta 1), la cui idea è quella di esporre alcune funzionalità di accesso ai dati tramite servizi.
ADO.NET Sync Service, componente poco citato ma presente nel framework 3.5, vede subito una sua evoluzione verso il Sync Framework (che attualmente comprende ADO.NET Sync Service 2 Beta, la possibilità di sincronizzare Feed RSS e altri componenti sia client-to-server sia peer-to-peer). La direzione è quella di costruire un framework di sincronizzazione che possa sfruttare anche i servizi ADO.NET Data Service e SQL Server Data Service per poter accedere a dati remoti quando siamo online e/o sincronizzarli per poter poi lavorare offline.
Alla DevCon 2008 abbiamo due sessioni: la prima Web Futures sarà una sessione plenaria in cui faremo una carrellata di tutte le novità che riguardano in qualunque forma il Web, accennate nella prima parte del post; sarà una sessione a sale congiunte. L'altra sessione è invece dedicata a ADO.NET Sync Service rilasciata con il framework 3.5 e Visual Studio 2008.