1. Le novità di Visual Studio 2012
E il .Net Framework 4.5
2. Visual Studio 2012
• Nuovo Design
• Nuovo Motore
• Compatibile al 100% con i progetti precedenti
– Supporta .NET Framework 2.0, 3.x, 4.x
– Non cambia i file progetto
• Introduce il supporto alle app di Windows 8
• Disponibile anche in versione Express
– http://www.micrososft.com/express/
3. Visual Studio 2012
• .Net FrameWork 4.5
– Versione evolutiva della 4.0
– Si istalla sopra
• C# 5
• Nuovo Pattern Async, Await
• Nuove API per HTTP nel namespace
System.Net.Http
– Nuova classe HttpClient con supporto REST/POX
4. Visual Studio 2012
• ASP.NET Web API (ASP 4.5 - MVC 4 ecc.)
• Supporto ai WebSockets (classi WebSocket e ClientWebSocket che implementano
rispettivamente il server e il client web socket su cui poi il NetHttpBinding si basa.
Possiamo sfruttare direttamente queste due classi per avere il controllo totale del
trasferimento dei dati tra client e server)
• Smart task (wizard) sui controlli/HTML (la possiblità di inserire snippet in
maniera veloce anche nell'HTML)
• Nuovi snippet HTML5
• ‘Extract to User Control’ (data una selezione di markup, crea al volo uno
user control)
• Generazione degli eventi server da markup (come nell'editor XAML per
WPF/Silverlight);
• Nuovi Template di progetto
• Supporto ai nuovi standard web, come HTML5, CSS3
• Supporto ai differenti Browser in Debug
• IIS Express come nuovo server di default (non più Visual Web Developer Web Server)
5. Visual Studio 2012
• IISEXPRESS 8
– Da questo punto di vista, è particolarmente comoda la possibilità di
scegliere il browser con cui effettuare i testing direttamente dalla voce
Debug, oltre alla comparsa di un tool, chiamato Page Inspector, che
consente di mandare in esecuzione una pagina e visualizzare, in
visuale, qual è la porzione di sorgente corrispondente.
7. Visual Studio 2012
• Page Inspector
– Requisiti per utilizzare questo tool:
– Visual Studio 2012
– .Net Framework 4.5
– Una web application che utilizzi il framework 4 (o successivi)
– Explorer 9 (o successivi)
– Javascript abilitato nel browser
9. Visual Studio 2012
• Async in C#
• Consente di evitare di scrivere questo codice:
void OpenSite()
{
WebClientclient = new WebClient();
client.DownloadStringCompleted+= client_DownloadStringCompleted;
client.DownloadStringAsync(new Uri("http://www.aspitalia.com"));
}
void client_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgse)
{
string html = e.Result;
this.content.Text= html;
}
10. Visual Studio 2012
• Async in C#
(In sostanza il codice è asincrono, ma lo scriviamo in maniera “sincrona”)
Async void OpenSite()
{
WebClientclient = new WebClient();
string html = awaitclient.DownloadStringTaskAsync(new Uri("http://www.aspitalia.com"));
this.content.Text= html;
}