ASP.NET MVC 3 Tools Update

Three weeks ago we held our MIX 2011 conference in Las Vegas.  MIX is one of my favorite events of the year, and the conference always has a ton of great content and announcements.  All of the keynotes and breakout sessions from the event can be watched online for free here.  I’ll be doing a few posts in the upcoming weeks that also cover some highlights from it.

ASP.NET MVC 3 Tools Update

One of the announcements I made in my Day 1 keynote was the release of an ASP.NET MVC 3 Tools Update.  This update is a small, but very tasty, update that includes a bunch of really nice tooling improvements for ASP.NET MVC 3.  You can install it from the http://asp.net/mvc site (just click the installer).

The ASP.NET MVC 3 Tools Update can be installed on top of the original ASP.NET MVC 3 release (no need to uninstall it if you already have it installed) or just installed directly on a clean machine (there is no need to have the original ASP.NET MVC 3 bits already installed). 

The ASP.NET MVC 3 Tools update only includes Visual Studio tooling improvements and default project template changes – it does not include any changes to the ASP.NET MVC 3 runtime binaries.  Because it uses the same ASP.NET MVC 3 runtime binaries as our original January release, there is no need to update existing MVC 3 projects you are working on or make any code changes to them. 

What is in the ASP.NET MVC 3 Tools Update?

The ASP.NET MVC 3 Tools Update includes a bunch of nice tooling improvements for ASP.NET MVC 3 including:

  • The final release of EF 4.1 (which includes EF Code First) is now included by default with all new projects.  Previously you had to download this library separately or get it using NuGet.  Now it is referenced by default when you create new projects (enabling a really clean, powerful data API out of the box).
  • Built-in data scaffolding support is now supported with the Add->Controller dialog within Visual Studio.  This enables you to automatically scaffold a Controller class (which includes all the necessary data access code) and all of the view templates required to implement a CRUD solution against an EF model class (using either code-first, database-first or model-first).  It makes it super easy to quickly create a data driven site using ASP.NET MVC. 
  • New HTML5 project templates are included that make it easy to use HTML5 semantic markup when creating new sites (meaning elements like <header>, <footer>, <section>, <aside>, etc).  We also now include the Modernizr 1.7 JavaScript library with new projects.  Modernizr is a cool OSS library that makes it easy to check for HTML5 capabilities within browsers, and also allows you to use standard CSS to style HTML5 semantic elements and still have the styling work on older browsers (like IE6).
  • A new Intranet Project Template has been included with this release that makes it easy to create a new project that uses Windows authentication to identify users (as opposed to the Forms Authentication pages built-into the Internet template today).  Speaking of the Internet Project Template, the AccountController class within it has also been cleaned up with this release.
  • Newer versions of jQuery core, jQuery UI and jQuery Validation are included with this release.  The default versions added to new projects are also now added as NuGet libraries (meaning they are listed in the packages.config file of the project) – which means that you can use NuGet to easily update them to even more recent versions as a later date.

I’m going to do several blog posts in the days and weeks ahead that cover the above features and how to take advantage of them.  You can also learn more about the release (and see it in action) from the following posts/videos:

Hope this helps,

Scott

P.S. I am also now using Twitter for quick updates and to share links. Follow me at: twitter.com/scottgu

21 Comments

  • Great news, thanks Scott!

  • Hi Scott,
    Are you leaving .NET Team?! ;)

  • When I run "MVC 3 installer", it shows "Product does not apply".

    Is that because I've installed MVC 3 Visual Studio 2010 Tools Update 3.0.20406.0?

    Thanks

  • Scott, very sad to hear you are leaving .NET team :-( YOU were the main mentor to reach .NET to this stage...God bless .NET!

  • Glad to hear that the AccountController has had a cleanup. It's a terrible mess. :)

    All the best!

  • Sorry to see you leave the .NET team, good luck with Azure.

  • Hey Scott,

    Great refresh here. I've said it before and I'll say it again: the work that used to be a month-long contract (and many painful hours of work) now takes minutes and is a heap of fun.

    I'll also second your voice on SH at his best in the Stack of Love presentation; folks, it was great live and it's great as a download. Check it out and watch the code ninja in action. Worth your time!

    Cheers,
    James

  • thanks for info...

  • that are great improvements have been made this year.hoping some more as well..:)

  • Are you leaving .NET for Azure? REALLY?

  • Great that jQuery and Validation is included as a nuget package now! I had to do it myself before: remove file from /js/ add it back from nuGet.

    Great job!

  • @Anon, @joycsharp, @Dofs

    >>>>>> Scott, very sad to hear you are leaving .NET team :-( YOU were the main mentor to reach .NET to this stage...God bless .NET!

    Don't worry - I'm not leaving .NET. I continue to run a lot of the core .NET teams (ASP.NET, WCF, WF, AppFabric, IIS, VS Web Tools, WebMatrix, among others).

    I'm also spending a lot of time on Azure. But I'm not leaving .NET :-)

    Hope this helps,

    Scott

  • @Leon,

    >>>>>> When I run "MVC 3 installer", it shows "Product does not apply". Is that because I've installed MVC 3 Visual Studio 2010 Tools Update 3.0.20406.0?

    Yep - that is because you already have it installed. :-)

    Thanks,

    Scott

  • @Michiel,

    >>>>>> On the subject of ASP.NET MVC project templates, I don't know if those are extensible, but I'd love to see a way for us to insert our own templates into the wizard, or get more templates online (maybe based on a specific NuGet package type). Also, please consider adding the template wizard to WebForms applications as well (with an option for an MVP project template for instance).

    I believe Scott Hanselman has a talk at one of the recent conferences that shows how to create project templates. Right now you can't install these via NuGet since they require being installed at the user/system level (and not just at the project level). But it is something I'd love for us to enable in the future.

    Hope this helps,

    Scott

  • Thx for the update.
    Good to read that you are going to be in charge of some .NET projects. :)

  • Scott, Microsoft needs to stop messing around and just make you Chief Software Architect. I hear the position is still vacant. :)

  • Hi Scott,

    Great news about the tools update :)
    Is it possible to somehow update existing MVC 3 projects to benefit from the tools update? Or do I have to create a completely new project, and copy everything over?

  • -----------Don't worry - I'm not leaving .NET. I continue to run a lot of the core .NET teams (ASP.NET, WCF, WF, AppFabric, IIS, VS Web Tools, WebMatrix, among others).

    I'm also spending a lot of time on Azure. But I'm not leaving .NET :-)----------------

    Is that all? What are you doing in your spare time?

  • Great to see the energy and commitment MS is putting behind this framework, you guys are doing this really, really right...and I haven't been able to say that a whole lot in the past. Keep up the great work and releases making MVC better and better!

  • @Christian,

    >>>>>> Is it possible to somehow update existing MVC 3 projects to benefit from the tools update? Or do I have to create a completely new project, and copy everything over?

    If you install the tools update, then you'll get scaffolding for your existing projects (although you'll need to manually reference the EF code first assembly if you want to use the EF Code First option).

    Hope this helps,

    Scott

  • Just to clarify, then: This update is not rolled into SP1?

Comments have been disabled for this content.