ASP.NET 4.5, ASP.NET MVC 4 and ASP.NET Web Pages 2, along with a few side frameworks that are not really part of the official .NET Framework package, bring new capabilities to Microsoft-based Web development that allow ever more scalable and immersive browser-based experiences.

In late October, Microsoft corporate vice president Scott Guthrie announced via his blog that .NET 4.5, and thus ASP.NET 4.5, were available for use in Windows Azure websites. Given that many of Microsoft’s own properties have been slower than expected in adopting the latest version, this is welcome news as an indicator that this version of ASP.NET is solid even in a shared environment, and it enables scale as advertised. The Azure team is more cutting-edge than most, but they also cannot afford to let the systems they run bog down.

Shrinking things down
One set of capabilities that help deliver on better performance is full support in the framework for Bundling and Minification. This can improve request load time by reducing the chattiness of too many page element requests. The Bundling feature combines JavaScript or CSS file requests, minimizing the overhead of each request and also getting around the fact that modern browsers will only allow a set number of simultaneous requests (typically six at a time). Fewer requests usually will improve page load performance. Minification optimizes the contents of the JavaScript or CSS files to remove white space and to rename variables to very short names, and also allows removing comments from the text. When combined with Bundling, this can make a big difference in user satisfaction.

A minor problem affecting the learning curve for those not used to writing JavaScript directly is the lack of IntelliSense in Visual Studio for JavaScript code. ASP.NET 4.5 and Visual Studio 2012 have remedied this situation. This sounds like only a small improvement to those who know JavaScript like the back of their hand and to those who have not written much JavaScript,ASP.NET but the vast majority of developers fall in the middle and will appreciate this change. Meanwhile, the NuGet package manager, while not really a feature of ASP.NET 4.5, has become a staple for Web developers since it became the underlying engine of the Microsoft Web Platform Installer in late 2010.

SignalR is a feature I have been hoping to see myself. SignalR allows developers to quickly and easily call on libraries to push data to all connected browsers. It plays very well in situations where you want to build a dashboard, such as a project-management system where multiple browser-connected users are making changes at the same time. If you have seen the penny auction sites where auctions are held second by second, this is the kind of immediate feedback that can be accomplished with the new framework.

SignalR works with WebSockets and lots of JavaScript. It is not revolutionary, but it will enable a much larger portion of developers to include push notifications into their solutions. The example that is most often provided to show how this works is a browser-based chat room, but if you followed the recent elections in the United States, you likely saw websites that updated results without page refreshes. This is becoming more and more of an expected functionality.

Page Inspection is a new feature that Scott Hanselman, principal program manager at Microsoft, demonstrated during his part of the keynote at the company’s BUILD conference in late October. The idea behind this feature is that pages are getting more and more complicated and cluttered. Page Inspection lets you mouse over elements of the page UI, and the code that renders that element is brought into view and highlighted. This is the logical next step to having design and HTML views both up in Visual Studio, and as you select an item in one, the other syncs your selection.

Sometimes features are included in the beta of a product, but do not release with the product and instead either are left on the cutting room floor of product management, or are released out of band and then live or die on their own schedule. Microsoft took the single-page application (SPA) functionality (including the templates) out of ASP.NET MVC for the final release of version 4. We expect it to live on, but as a NuGet package. The SPA model is getting popular and does its magic by heavily leveraging the Knockout and Upshot script libraries. While technically not a feature of ASP.NET 4.5, you will still see it mentioned in the same breath often due to how it made its debut in the beta, but was then pulled before final release.
#!
ASP.NET MVC 4
The latest version of MVC adds to the already powerful feature set laid down by the previous versions, and includes a number of mobile development capabilities, a Web API and (to follow into the whole theme set for .NET 4.5) support for asynchronous methods. ASP.NET MVC has been moving rapidly in the journey to make it a first-class alternative to ASP.NET Web Forms. An important part of that progress is mobile application support. To that end, mobile project templates are included, and support for JQuery Mobile is also available.