What’s new in ASP.NET MVC 4               Simone Chiaretta               Architect, Council of the EU               http:/...
Who am I?►      Simone Chiaretta►      Microsoft MVP ASP.NET►      ASP Insider►      Blogger – http://codeclimber.net.nz► ...
ASP.NET MVC 4 Goals►   Enhance development and deployment►   Bring together all MS Web Stack►   Better HTML5 / Mobile supp...
ASP.NET MVC 4►   New and refreshed Project Template►   Enhanced support for mobile sites►   Recipes for custom code genera...
ASP.NET MVC 4 – Developer Preview►   Released September 2011 @ Build►   Both for .NET 4 and .NET 4.5 preview►   Downloadab...
New Project Template►   New look closer to ASP.NET website►   HTML5 by default►   Responsive Design (via media queries)►  ...
Support for Mobile Sites►   New Mobile Project Template for mobile-only    sites►   Display modes    – Views/index.cshtml ...
Recipes►   Custom code-generation plugins►   Downloadable via NuGet►   Still a bit undocumented►   Heavily rely on VS Exte...
Recipes How-To►    Class library►    Reference     Microsoft.VisualStudio.Mvc.Extensibility.1.0.     dll►    Implement IRe...
Task based Async Controllers    ►    Single Method Async Contollers    ►    No more manual handling of requests    ►    Re...
Looking at the future►   Better integration with other “products”    – Web Pages 2    – ASP.NET 4.5    – Web API
Minification & Bundling                                              View<script src=“/Scripts/js”></scripts>             ...
WCF WebAPI Preview 6►   Uses WCF syntax for web API►   Returns JSON or XML►   Extensible
Summary►   MVC4 introduced new mobile features, better    aync, enhanced tooling►   Current release is a Developer Preview...
References►   MVC 4 Main Page and Dev Preview    http://www.asp.net/mvc/mvc4►   Release Notes    http://www.asp.net/whitep...
Contacts – Simone Chiaretta     ►   Blog: http://codeclimber.net.nz/     ►   Twitter: @simonech15
© 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be...
Upcoming SlideShare
Loading in …5
×

What's new in asp.net mvc 4

23,563 views

Published on

Overview of the new features available on ASP.NET MVC 4 Developer Preview

Published in: Technology

What's new in asp.net mvc 4

  1. 1. What’s new in ASP.NET MVC 4 Simone Chiaretta Architect, Council of the EU http://codeclimber.net.nz Twitter: @simonech
  2. 2. Who am I?► Simone Chiaretta► Microsoft MVP ASP.NET► ASP Insider► Blogger – http://codeclimber.net.nz► Moved to Belgium► Contributor to various OpenSource projects► Runner/Climber/TriathleteDisclaimer:"The views expressed are purely those of the speaker and may not in any circumstances be regarded as stating an official position of the Council"
  3. 3. ASP.NET MVC 4 Goals► Enhance development and deployment► Bring together all MS Web Stack► Better HTML5 / Mobile support► Cloud ready
  4. 4. ASP.NET MVC 4► New and refreshed Project Template► Enhanced support for mobile sites► Recipes for custom code generation► Improved support for async controllers► Cloud-ready
  5. 5. ASP.NET MVC 4 – Developer Preview► Released September 2011 @ Build► Both for .NET 4 and .NET 4.5 preview► Downloadable with Web Platform Installer 4
  6. 6. New Project Template► New look closer to ASP.NET website► HTML5 by default► Responsive Design (via media queries)► Uses jQueryUI for the login► Includes KnockOutJS
  7. 7. Support for Mobile Sites► New Mobile Project Template for mobile-only sites► Display modes – Views/index.cshtml – Views/index.mobile.cshtml► Inclusion of jQuery Mobile► View Switcher and Browser Overriding
  8. 8. Recipes► Custom code-generation plugins► Downloadable via NuGet► Still a bit undocumented► Heavily rely on VS Extensibility
  9. 9. Recipes How-To► Class library► Reference Microsoft.VisualStudio.Mvc.Extensibility.1.0. dll► Implement IRecipe or IFolderRecipe► Build your own custom UI Dialog► Package and deploy with NuGetOrInstall Package AspNetMvc4.RecipeSdk
  10. 10. Task based Async Controllers ► Single Method Async Contollers ► No more manual handling of requests ► Returns Task<ActionResult> MVC3public void SyncAllAsync(){ AsyncManager.OutstandingOperations.Increment(); MVC4 StuffService stuff = new StuffService(); stuff.StuffCompleted += (sender, e) => public Task<ActionResult> SyncAllAsync(){ MVC4 + C#5 (or Async CTP) { AsyncManager.Parameters["model"] = e.Result; StuffService stuff = new StuffService();AsyncManager.OutstandingOperations.Decrement(); }; return stuff.DoStuffAsync() stuff.DoStuffAsync("Some other => { .ContinueWith(t stuff");} return View(t.Result) public async Task<ActionResult> SyncAllAsync() { });public ActionResult SyncAllCompleted(SyncViewModel model) }{ StuffService stuff = new StuffService(); return View(model); stuff.DoStuffAsync()); return View(await} }
  11. 11. Looking at the future► Better integration with other “products” – Web Pages 2 – ASP.NET 4.5 – Web API
  12. 12. Minification & Bundling View<script src=“/Scripts/js”></scripts> Global.asaxBundleTable.Bundles.EnableDefaultBundles();
  13. 13. WCF WebAPI Preview 6► Uses WCF syntax for web API► Returns JSON or XML► Extensible
  14. 14. Summary► MVC4 introduced new mobile features, better aync, enhanced tooling► Current release is a Developer Preview from BUILD (4 months ago)► Beta coming in the next few months► Final release in sync with next release of Visual Studio vNext (Dev11)
  15. 15. References► MVC 4 Main Page and Dev Preview http://www.asp.net/mvc/mvc4► Release Notes http://www.asp.net/whitepapers/mvc4-release-notes► Roadmap http://aspnet.codeplex.com/wikipage?title=ASP.NET%20MVC%204%20RoadMap► Phil Haack’s Mobility Talk, BUILD Sep 2011 http://channel9.msdn.com/events/BUILD/BUILD2011/TOOL-803T► Create an MVC4 Recipe http://haacked.com/archive/2011/09/22/writing-a-recipe-for-asp-net- mvc-4-developer-preview.aspx► The evolution of Async controllers in ASP.NET MVC http://codeclimber.net.nz/archive/2012/01/09/evolution-of-async- controller-asp-net-mvc.aspx
  16. 16. Contacts – Simone Chiaretta ► Blog: http://codeclimber.net.nz/ ► Twitter: @simonech15
  17. 17. © 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.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.

×