SlideShare ist ein Scribd-Unternehmen logo
1 von 28
Asp.Net MVC 2 Visual Studio 2010 Community Launch Tour Andrea Balducci http://www.ienumerable.it http://twitter.com/andreabalducci
Come funziona MVC? Inviata al server Request Asp.Net MVC Identifica ed istanzia Controller prepara il Model determina la viene passato alla genera la Response View http://msdn.microsoft.com/en-us/library/dd381412.aspx
Piattaforma di sviluppo Download separato http://bit.ly/bg04yY Compreso
Framework Asp.Net MVC2 è disponibile dalla versione 3.5 sp1 di Microsoft .Net Framework. ,[object Object]
Installabile tramite Web PlatformInstaller
Bin deployable
Standaloneinstallerhttp://www.asp.net/mvc/
Open Sourced OSI-compliantopen-sourcelicense http://aspnet.codeplex.com/releases/view/41742
Routing In Asp.Net 4 il sistema di routing è utilizzabile anche per applicazioni webforms. Asp.Net MVC 1/2 WebForms 4 http://bit.ly/9gyPkM
Areas Organizzazione dei progetti in aree funzionali In ogni area è possibile definire controllers, models e views Le aree vanno attivate in fasi di startup dell’applicazione web. http://msdn.microsoft.com/en-us/library/ee671793.aspx
Areas - Registrazione Classe <AreaName>AreaRegistration: ,[object Object]
Routeshttp://msdn.microsoft.com/en-us/library/ee671793.aspx
Areas - Routes Registrare ogni route con il relativo namespace per evitare collisioni http://msdn.microsoft.com/en-us/library/ee671793.aspx
Areas - Routes Registrazione con namedargument (C# 4) Registrazione classica http://msdn.microsoft.com/en-us/library/ee671793.aspx
Areas - ActionLink ,[object Object]
Se l’area non è indicata la default è l’area corrente.
Per tornare alla “root” indicare {area=String.Empty}http://msdn.microsoft.com/en-us/library/ee671793.aspx
{Areas – Demo}
Strongly-Typed UI Helpers Permettono l’utilizzo di lambda expressions per indicare la proprietà del model Vantaggi ,[object Object]
Messaggi di errore a compile time (se è abilitata la compilazione delle views)
Intellisensehttp://bit.ly/8ZUEom
DataAnnotations Permettono di decorare il modello dati dell’applicazione tramite attributi E’possibile, per esempio, indicare che un valore è obbligatorio o che una stringa richiede un editormultiline http://bit.ly/L5J9
DataAnnotations Q: Perché MultilineText e non TextArea? R: DataAnnotations è indipendente dal framework della UI Q: Se è indipendente dalla UI come viene gestita da MVC? R: DataAnnotationsModelMetadataProvider DataAnnotationsModelValidatorProvider Q: Se il mio model è autogenerato come posso annotarlo? R: [MetadataType(typeof(MyModelMetadata))] http://bit.ly/1x4TSC
Validazione La validazione è applicata su tutto il modello, indipendentemente dalle proprietà presenti nella form inviata al server. Può far uso delle DataAnnotations - [Required] - [Range]  - [StringLength]  - [RegularExpression]
Validazione Una proprietà non nullable è implicitamente required. Indicare comunque [Required] permette di customizzare il messaggio di errore.
Validazione Client Side MVC2 supporta nativamente la validazione client side (qualora javascript sia abilitato) sfruttando gli stessi meccanismi definiti per la validazione server side. Per attivare la validazione client-side:1) includere gli necessari script necessari 2) chiamare Html.EnableClientSideValidation() http://bit.ly/5WILHI
{Validazione– Demo}
DynamicScaffolding E’ possibile autogenerare le form di inserimento e visualizzazione dati utilizzando Html.EditorForModel() e Html.DisplayForModel() http://bit.ly/3hPK7H

Weitere ähnliche Inhalte

Was ist angesagt?

Generazione Dinamica di Codice in .NET
Generazione Dinamica di Codice in .NETGenerazione Dinamica di Codice in .NET
Generazione Dinamica di Codice in .NETStefano Ottaviani
 
Blazor with .net 5 - di Gerardo Greco
Blazor with .net 5 - di Gerardo GrecoBlazor with .net 5 - di Gerardo Greco
Blazor with .net 5 - di Gerardo GrecoGiuneco S.r.l
 
ASP.NET 4.6 e ASP.NET 5...l'evoluzione del web
ASP.NET 4.6 e ASP.NET 5...l'evoluzione del webASP.NET 4.6 e ASP.NET 5...l'evoluzione del web
ASP.NET 4.6 e ASP.NET 5...l'evoluzione del webAndrea Dottor
 
Cosa c'è di nuovo in asp.net core 2 0
Cosa c'è di nuovo in asp.net core 2 0Cosa c'è di nuovo in asp.net core 2 0
Cosa c'è di nuovo in asp.net core 2 0Andrea Dottor
 
Spring Framework
Spring FrameworkSpring Framework
Spring FrameworkNaLUG
 
Java Spring Basics - Donato Andrisani - Gabriele Manfredi
Java Spring Basics - Donato Andrisani - Gabriele ManfrediJava Spring Basics - Donato Andrisani - Gabriele Manfredi
Java Spring Basics - Donato Andrisani - Gabriele ManfrediGabriele Manfredi
 
Blazor ha vinto? Storie di casi reali
Blazor ha vinto? Storie di casi realiBlazor ha vinto? Storie di casi reali
Blazor ha vinto? Storie di casi realiAndrea Dottor
 
Asp.net 4 Community Tour VS2010
Asp.net 4 Community Tour VS2010Asp.net 4 Community Tour VS2010
Asp.net 4 Community Tour VS2010Fabrizio Bernabei
 
ASP.NET Core - dove siamo arrivati
ASP.NET Core - dove siamo arrivatiASP.NET Core - dove siamo arrivati
ASP.NET Core - dove siamo arrivatiAndrea Dottor
 
Alessandro Forte - MVP vs MVC
Alessandro Forte - MVP vs MVCAlessandro Forte - MVP vs MVC
Alessandro Forte - MVP vs MVCAlessandro Forte
 
What's new in Asp.Net 4.5 (and WebApi)
What's new in Asp.Net 4.5 (and WebApi)What's new in Asp.Net 4.5 (and WebApi)
What's new in Asp.Net 4.5 (and WebApi)Luca Milan
 
Back to the Future: Migrare da WebForm ad ASP.NET Core gradualmente
Back to the Future: Migrare da WebForm ad ASP.NET Core gradualmente Back to the Future: Migrare da WebForm ad ASP.NET Core gradualmente
Back to the Future: Migrare da WebForm ad ASP.NET Core gradualmente Andrea Dottor
 

Was ist angesagt? (14)

Generazione Dinamica di Codice in .NET
Generazione Dinamica di Codice in .NETGenerazione Dinamica di Codice in .NET
Generazione Dinamica di Codice in .NET
 
Blazor with .net 5 - di Gerardo Greco
Blazor with .net 5 - di Gerardo GrecoBlazor with .net 5 - di Gerardo Greco
Blazor with .net 5 - di Gerardo Greco
 
ASP.NET 4.6 e ASP.NET 5...l'evoluzione del web
ASP.NET 4.6 e ASP.NET 5...l'evoluzione del webASP.NET 4.6 e ASP.NET 5...l'evoluzione del web
ASP.NET 4.6 e ASP.NET 5...l'evoluzione del web
 
Cosa c'è di nuovo in asp.net core 2 0
Cosa c'è di nuovo in asp.net core 2 0Cosa c'è di nuovo in asp.net core 2 0
Cosa c'è di nuovo in asp.net core 2 0
 
Spring Framework
Spring FrameworkSpring Framework
Spring Framework
 
Java Spring Basics - Donato Andrisani - Gabriele Manfredi
Java Spring Basics - Donato Andrisani - Gabriele ManfrediJava Spring Basics - Donato Andrisani - Gabriele Manfredi
Java Spring Basics - Donato Andrisani - Gabriele Manfredi
 
Blazor ha vinto? Storie di casi reali
Blazor ha vinto? Storie di casi realiBlazor ha vinto? Storie di casi reali
Blazor ha vinto? Storie di casi reali
 
Asp.net 4 Community Tour VS2010
Asp.net 4 Community Tour VS2010Asp.net 4 Community Tour VS2010
Asp.net 4 Community Tour VS2010
 
ASP.NET Core - dove siamo arrivati
ASP.NET Core - dove siamo arrivatiASP.NET Core - dove siamo arrivati
ASP.NET Core - dove siamo arrivati
 
Alessandro Forte - MVP vs MVC
Alessandro Forte - MVP vs MVCAlessandro Forte - MVP vs MVC
Alessandro Forte - MVP vs MVC
 
What's new in Asp.Net 4.5 (and WebApi)
What's new in Asp.Net 4.5 (and WebApi)What's new in Asp.Net 4.5 (and WebApi)
What's new in Asp.Net 4.5 (and WebApi)
 
Introduzione a Struts
Introduzione a StrutsIntroduzione a Struts
Introduzione a Struts
 
Spring @Aspect e @Controller
Spring @Aspect e @Controller Spring @Aspect e @Controller
Spring @Aspect e @Controller
 
Back to the Future: Migrare da WebForm ad ASP.NET Core gradualmente
Back to the Future: Migrare da WebForm ad ASP.NET Core gradualmente Back to the Future: Migrare da WebForm ad ASP.NET Core gradualmente
Back to the Future: Migrare da WebForm ad ASP.NET Core gradualmente
 

Ähnlich wie Asp.Net MVC 2 :: VS 2010 Community Tour

Designing with microservices - Daniele Mondello
Designing with microservices - Daniele MondelloDesigning with microservices - Daniele Mondello
Designing with microservices - Daniele MondelloDaniele Mondello
 
ASP.NET MVC 3: se non ora, quando?
ASP.NET MVC 3: se non ora, quando?ASP.NET MVC 3: se non ora, quando?
ASP.NET MVC 3: se non ora, quando?Giorgio Di Nardo
 
Hands on MVC - Mastering the Web
Hands on MVC - Mastering the WebHands on MVC - Mastering the Web
Hands on MVC - Mastering the WebClaudio Gandelli
 
Asp.Net MVC 3 - Il Model View Controller secondo Microsoft
Asp.Net MVC 3 - Il Model View Controller secondo MicrosoftAsp.Net MVC 3 - Il Model View Controller secondo Microsoft
Asp.Net MVC 3 - Il Model View Controller secondo MicrosoftStefano Benedetti
 
ASP.NET performance optimization
ASP.NET performance optimizationASP.NET performance optimization
ASP.NET performance optimizationAndrea Dottor
 
Niccolò Becchi: Introduzione a GWT
Niccolò Becchi: Introduzione a GWTNiccolò Becchi: Introduzione a GWT
Niccolò Becchi: Introduzione a GWTfirenze-gtug
 
Migliora il tuo codice con knockout.js
Migliora il tuo codice con knockout.jsMigliora il tuo codice con knockout.js
Migliora il tuo codice con knockout.jsAndrea Dottor
 
Rich client application: MVC4 + MVVM = Knockout.js
Rich client application: MVC4 + MVVM = Knockout.jsRich client application: MVC4 + MVVM = Knockout.js
Rich client application: MVC4 + MVVM = Knockout.jsGiorgio Di Nardo
 
Dependency injection questa sconosciuta
Dependency injection questa sconosciutaDependency injection questa sconosciuta
Dependency injection questa sconosciutaAndrea Dottor
 
Web Api – The HTTP Way
Web Api – The HTTP WayWeb Api – The HTTP Way
Web Api – The HTTP WayLuca Milan
 
Asp.NET MVC Framework
Asp.NET MVC FrameworkAsp.NET MVC Framework
Asp.NET MVC FrameworkDotNetMarche
 
Cert03 70-486 developing asp.net mvc 4 web applications
Cert03   70-486 developing asp.net mvc 4 web applicationsCert03   70-486 developing asp.net mvc 4 web applications
Cert03 70-486 developing asp.net mvc 4 web applicationsDotNetCampus
 
e-SUAP - General software architecture (Italiano)
e-SUAP - General software architecture (Italiano)e-SUAP - General software architecture (Italiano)
e-SUAP - General software architecture (Italiano)Sabino Labarile
 
Yii Framework - yes it is rapid web application development (Parte 1)
Yii Framework - yes it is rapid web application development (Parte 1)Yii Framework - yes it is rapid web application development (Parte 1)
Yii Framework - yes it is rapid web application development (Parte 1)brossi676
 
ASP.NET MVC 2.0
ASP.NET MVC 2.0ASP.NET MVC 2.0
ASP.NET MVC 2.0XeDotNet
 
Creazione componenti con Vue js
Creazione componenti con Vue jsCreazione componenti con Vue js
Creazione componenti con Vue jsGianfranco Castro
 

Ähnlich wie Asp.Net MVC 2 :: VS 2010 Community Tour (20)

ASP.NET MVC
ASP.NET MVCASP.NET MVC
ASP.NET MVC
 
Designing with microservices - Daniele Mondello
Designing with microservices - Daniele MondelloDesigning with microservices - Daniele Mondello
Designing with microservices - Daniele Mondello
 
ASP.NET MVC 3: se non ora, quando?
ASP.NET MVC 3: se non ora, quando?ASP.NET MVC 3: se non ora, quando?
ASP.NET MVC 3: se non ora, quando?
 
Hands on MVC - Mastering the Web
Hands on MVC - Mastering the WebHands on MVC - Mastering the Web
Hands on MVC - Mastering the Web
 
MVC and Struts 1
MVC and Struts 1MVC and Struts 1
MVC and Struts 1
 
Asp.Net MVC 3 - Il Model View Controller secondo Microsoft
Asp.Net MVC 3 - Il Model View Controller secondo MicrosoftAsp.Net MVC 3 - Il Model View Controller secondo Microsoft
Asp.Net MVC 3 - Il Model View Controller secondo Microsoft
 
ASP.NET performance optimization
ASP.NET performance optimizationASP.NET performance optimization
ASP.NET performance optimization
 
Niccolò Becchi: Introduzione a GWT
Niccolò Becchi: Introduzione a GWTNiccolò Becchi: Introduzione a GWT
Niccolò Becchi: Introduzione a GWT
 
Migliora il tuo codice con knockout.js
Migliora il tuo codice con knockout.jsMigliora il tuo codice con knockout.js
Migliora il tuo codice con knockout.js
 
Rich client application: MVC4 + MVVM = Knockout.js
Rich client application: MVC4 + MVVM = Knockout.jsRich client application: MVC4 + MVVM = Knockout.js
Rich client application: MVC4 + MVVM = Knockout.js
 
MVC2: non solo tecnologia
MVC2: non solo tecnologiaMVC2: non solo tecnologia
MVC2: non solo tecnologia
 
Dependency injection questa sconosciuta
Dependency injection questa sconosciutaDependency injection questa sconosciuta
Dependency injection questa sconosciuta
 
Web Api – The HTTP Way
Web Api – The HTTP WayWeb Api – The HTTP Way
Web Api – The HTTP Way
 
Asp.NET MVC Framework
Asp.NET MVC FrameworkAsp.NET MVC Framework
Asp.NET MVC Framework
 
Cert03 70-486 developing asp.net mvc 4 web applications
Cert03   70-486 developing asp.net mvc 4 web applicationsCert03   70-486 developing asp.net mvc 4 web applications
Cert03 70-486 developing asp.net mvc 4 web applications
 
e-SUAP - General software architecture (Italiano)
e-SUAP - General software architecture (Italiano)e-SUAP - General software architecture (Italiano)
e-SUAP - General software architecture (Italiano)
 
Yii Framework - yes it is rapid web application development (Parte 1)
Yii Framework - yes it is rapid web application development (Parte 1)Yii Framework - yes it is rapid web application development (Parte 1)
Yii Framework - yes it is rapid web application development (Parte 1)
 
ASP.NET MVC 2.0
ASP.NET MVC 2.0ASP.NET MVC 2.0
ASP.NET MVC 2.0
 
ASP.NET MVC: Full Throttle
ASP.NET MVC: Full ThrottleASP.NET MVC: Full Throttle
ASP.NET MVC: Full Throttle
 
Creazione componenti con Vue js
Creazione componenti con Vue jsCreazione componenti con Vue js
Creazione componenti con Vue js
 

Mehr von Andrea Balducci

Agile Industry 4.0 - IoT Day 2019
Agile Industry 4.0 - IoT Day 2019Agile Industry 4.0 - IoT Day 2019
Agile Industry 4.0 - IoT Day 2019Andrea Balducci
 
Stranger Streams | NStore @ DevMarche
Stranger Streams | NStore @ DevMarcheStranger Streams | NStore @ DevMarche
Stranger Streams | NStore @ DevMarcheAndrea Balducci
 
Event based modelling and prototyping
Event based modelling and prototypingEvent based modelling and prototyping
Event based modelling and prototypingAndrea Balducci
 
Storage dei dati con MongoDB
Storage dei dati con MongoDBStorage dei dati con MongoDB
Storage dei dati con MongoDBAndrea Balducci
 
Italian Agile Days 2016 - Modellathon
Italian Agile Days 2016 - ModellathonItalian Agile Days 2016 - Modellathon
Italian Agile Days 2016 - ModellathonAndrea Balducci
 
TypeScript intro / mobile dev camp
TypeScript intro / mobile dev campTypeScript intro / mobile dev camp
TypeScript intro / mobile dev campAndrea Balducci
 
Mongo db halloween party
Mongo db halloween partyMongo db halloween party
Mongo db halloween partyAndrea Balducci
 
[Alam aeki] Guida illustrata alla modellazione di un dominio con Event Sourci...
[Alam aeki] Guida illustrata alla modellazione di un dominio con Event Sourci...[Alam aeki] Guida illustrata alla modellazione di un dominio con Event Sourci...
[Alam aeki] Guida illustrata alla modellazione di un dominio con Event Sourci...Andrea Balducci
 
Event Sourcing con NEventStore
Event Sourcing con NEventStoreEvent Sourcing con NEventStore
Event Sourcing con NEventStoreAndrea Balducci
 
Introduzione ai framework ioc
Introduzione ai framework iocIntroduzione ai framework ioc
Introduzione ai framework iocAndrea Balducci
 

Mehr von Andrea Balducci (17)

Agile Industry 4.0 - IoT Day 2019
Agile Industry 4.0 - IoT Day 2019Agile Industry 4.0 - IoT Day 2019
Agile Industry 4.0 - IoT Day 2019
 
Inception
InceptionInception
Inception
 
Stranger Streams | NStore @ DevMarche
Stranger Streams | NStore @ DevMarcheStranger Streams | NStore @ DevMarche
Stranger Streams | NStore @ DevMarche
 
Event based modelling and prototyping
Event based modelling and prototypingEvent based modelling and prototyping
Event based modelling and prototyping
 
Storage dei dati con MongoDB
Storage dei dati con MongoDBStorage dei dati con MongoDB
Storage dei dati con MongoDB
 
Italian Agile Days 2016 - Modellathon
Italian Agile Days 2016 - ModellathonItalian Agile Days 2016 - Modellathon
Italian Agile Days 2016 - Modellathon
 
Open domus 2016
Open domus 2016Open domus 2016
Open domus 2016
 
Oktober webfest
Oktober webfestOktober webfest
Oktober webfest
 
TypeScript intro / mobile dev camp
TypeScript intro / mobile dev campTypeScript intro / mobile dev camp
TypeScript intro / mobile dev camp
 
Typescript intro
Typescript introTypescript intro
Typescript intro
 
Alam aeki 2015
Alam aeki 2015Alam aeki 2015
Alam aeki 2015
 
Mongo db halloween party
Mongo db halloween partyMongo db halloween party
Mongo db halloween party
 
[Alam aeki] Guida illustrata alla modellazione di un dominio con Event Sourci...
[Alam aeki] Guida illustrata alla modellazione di un dominio con Event Sourci...[Alam aeki] Guida illustrata alla modellazione di un dominio con Event Sourci...
[Alam aeki] Guida illustrata alla modellazione di un dominio con Event Sourci...
 
Event Sourcing con NEventStore
Event Sourcing con NEventStoreEvent Sourcing con NEventStore
Event Sourcing con NEventStore
 
Intel AppUp Day Bologna
Intel AppUp Day BolognaIntel AppUp Day Bologna
Intel AppUp Day Bologna
 
Introduzione ai framework ioc
Introduzione ai framework iocIntroduzione ai framework ioc
Introduzione ai framework ioc
 
jQuery Ecosystem
jQuery EcosystemjQuery Ecosystem
jQuery Ecosystem
 

Asp.Net MVC 2 :: VS 2010 Community Tour

  • 1. Asp.Net MVC 2 Visual Studio 2010 Community Launch Tour Andrea Balducci http://www.ienumerable.it http://twitter.com/andreabalducci
  • 2. Come funziona MVC? Inviata al server Request Asp.Net MVC Identifica ed istanzia Controller prepara il Model determina la viene passato alla genera la Response View http://msdn.microsoft.com/en-us/library/dd381412.aspx
  • 3. Piattaforma di sviluppo Download separato http://bit.ly/bg04yY Compreso
  • 4.
  • 5. Installabile tramite Web PlatformInstaller
  • 8. Open Sourced OSI-compliantopen-sourcelicense http://aspnet.codeplex.com/releases/view/41742
  • 9. Routing In Asp.Net 4 il sistema di routing è utilizzabile anche per applicazioni webforms. Asp.Net MVC 1/2 WebForms 4 http://bit.ly/9gyPkM
  • 10. Areas Organizzazione dei progetti in aree funzionali In ogni area è possibile definire controllers, models e views Le aree vanno attivate in fasi di startup dell’applicazione web. http://msdn.microsoft.com/en-us/library/ee671793.aspx
  • 11.
  • 13. Areas - Routes Registrare ogni route con il relativo namespace per evitare collisioni http://msdn.microsoft.com/en-us/library/ee671793.aspx
  • 14. Areas - Routes Registrazione con namedargument (C# 4) Registrazione classica http://msdn.microsoft.com/en-us/library/ee671793.aspx
  • 15.
  • 16. Se l’area non è indicata la default è l’area corrente.
  • 17. Per tornare alla “root” indicare {area=String.Empty}http://msdn.microsoft.com/en-us/library/ee671793.aspx
  • 19.
  • 20. Messaggi di errore a compile time (se è abilitata la compilazione delle views)
  • 22. DataAnnotations Permettono di decorare il modello dati dell’applicazione tramite attributi E’possibile, per esempio, indicare che un valore è obbligatorio o che una stringa richiede un editormultiline http://bit.ly/L5J9
  • 23. DataAnnotations Q: Perché MultilineText e non TextArea? R: DataAnnotations è indipendente dal framework della UI Q: Se è indipendente dalla UI come viene gestita da MVC? R: DataAnnotationsModelMetadataProvider DataAnnotationsModelValidatorProvider Q: Se il mio model è autogenerato come posso annotarlo? R: [MetadataType(typeof(MyModelMetadata))] http://bit.ly/1x4TSC
  • 24. Validazione La validazione è applicata su tutto il modello, indipendentemente dalle proprietà presenti nella form inviata al server. Può far uso delle DataAnnotations - [Required] - [Range] - [StringLength] - [RegularExpression]
  • 25. Validazione Una proprietà non nullable è implicitamente required. Indicare comunque [Required] permette di customizzare il messaggio di errore.
  • 26. Validazione Client Side MVC2 supporta nativamente la validazione client side (qualora javascript sia abilitato) sfruttando gli stessi meccanismi definiti per la validazione server side. Per attivare la validazione client-side:1) includere gli necessari script necessari 2) chiamare Html.EnableClientSideValidation() http://bit.ly/5WILHI
  • 28. DynamicScaffolding E’ possibile autogenerare le form di inserimento e visualizzazione dati utilizzando Html.EditorForModel() e Html.DisplayForModel() http://bit.ly/3hPK7H
  • 29. Templating Il codice HTML generato dagli helperHtml.DisplayFor e Html.EditFor può essere customizzato tramite templates. Il template è una partialview che ha per nome il tipo del dato da rappresentare ed è memorizzato nelle cartelle EditorTemplates o DisplayTemplates http://bit.ly/3Vwjvj
  • 31. RenderAction L’introduzione dell’helperHtml.RenderAction rende possibile la componentizzazione dell’applicazione. In questo modo anche le logiche di business diventano riutilizzabili eliminando duplicazioni di codice E’ possibile limitare l’utilizzo di una determinata action alla sola RenderAction (evitando così di esporla tramite url) decorando l’action con [ChildActionOnly] http://haacked.com/archive/2009/11/18/aspnetmvc2-render-action.aspx
  • 33.
  • 34. I thread associati all’application pool sono limitati
  • 35. ThreadStarvation -> 503 Server toobusyL’utilizzo dei controller asincroni permette di delegare l’elaborazione ad un thread secondario, liberando il thread di elaborazione della request. http://msdn.microsoft.com/en-us/library/ee728598.aspx
  • 38. Slide e demo su © 2010 Microsoft Corporation. All rights reserved. Microsoft, Visual Studio, the Visual Studio logo, and [list other trademarks referenced] are trademarks of the Microsoft group of companies.   The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation.  Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation.  MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED, OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.