ASP.NET MVC 3 Go-Live License

| by Jonathan Allen Follow 578 Followers on Oct 12, 2010. Estimated reading time: 1 minute |

Microsoft’s ASP.NET team has taken the Agile philosophy of Deploy Early, Deploy Often to heart. Close on the heels of ASP.NET MVC 2, version 3 beta has already been approved for production use. With a whole host of promising new features including the Razor syntax, this will be a hard release to ignore.

We’ve talked about Razor before, one of the four major view engines for ASP.NET MVC. This release brings the VB version of Razor as well as enhancements to the C# version of Razor. Both versions of razor are significantly better than the old <% syntax, though they both bring baggage from their respective parent languages.

ASP.NET MVC changed the validation model. With version 2, potentially dangerous user-entered content will be rejected or accept at the form level. In version 3, input validation can be turned off on a field-by-field basis.

Serious thought has been given to dependency injection. Three new interfaces have been introduced, IControllerActivator, IDependencyResolver, and IViewActivator. The dependency resolver can be used to inject model validation, metadata, and value providers as well as model binders. The goal here isn’t just to make Microsoft’s offering more flexible, but to actually allow developers swap out all of the underpinnings.

Unlike the version 1 to 2 upgrade, there is only one intentional breaking change. Exception filters have been promoted ahead controllers with the same Order value. Also, more specific exception filters will be applied before general ones. Of course it is still recommended that each controller and exception filter be given a unique Order value.

ASP.NET MVC 3 runs side-by-side with versions 1 and 2. Developers wishing to upgrade existing projects must follow the instructions in the release notes. As mentioned before, this beta has been approved for production use with a “go live” license. But it is a beta, so it is subject to change between now and the final release. Under known issues, Intellisense for Razor is not currently available. Also, strongly typed views cannot by typed as arrays.

Rate this Article

Adoption Stage

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread
Community comments

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread


Login to InfoQ to interact with what matters most to you.

Recover your password...


Follow your favorite topics and editors

Quick overview of most important highlights in the industry and on the site.


More signal, less noise

Build your own feed by choosing topics you want to read about and editors you want to hear from.


Stay up-to-date

Set up your notifications and don't miss out on content that matters to you