Welcome!

AJAX & REA Authors: Lee Novak, Brad Abrams, Alin Irimie, Jonny Defh, RealWire News Distribution

Related Topics: .NET

.NET: Article

Microsoft Unveils an MVC Framework for ASP.NET

Amount of stuff' that is being piled into the Visual Studio 2008 release is positively staggering

Kevin Hoffman's Blog

Just this morning I saw a blog post containing some details about Microsoft's new and upcoming MVC framework for ASP.NET. I'm actually a little shocked - the sheer amount of "stuff" that is being piled into the Visual Studio 2008 release is positively staggering, though technically this looks like it will be released as an "add-on" to Visual Studio 2008 sometime in early '08.

Some of the highlights of the MVC framework appear to be:

  • It will use .aspx as a view engine and nothing more - controllers will be contained elsewhere. I think this is huge. Anybody who has done any serious development with ASP.NET knows that it completely violates the rules of MVC, and you have to hack until your eyes bleed to get it to resemble an MVC, and even then, most solutions end up hitting the .aspx page first (the view), which then backfills toward the controller ... also a backwards solution.
  • Support for Inversion of Control pattern. I'm not as familiar with this aspect of MVC as others, but this should definitely make a lot of people happy that already belong to the Spring .NET camp, since it appears as though you can rig up your MVC tethering using Spring via IoC. (this is based on third-hand info, so take with a really big grain of sea salt)
  • Loose and flexible - apparently there are no sealed classes involved and everything is based on interfaces, allowing you to plug in your own bits at will and yank out other bits as you see fit. Again, this is heresay but it sounds promising.
  • Support for other view engines like MonoRail. I'm not sure how that would work, but it's been mentioned on the Internet, so it must be true! :)
  • A true routed control mechanism. This is also huge, because it gives you URLs that look like this:
    /(Route)/(Action)/(Param)/(Param)/... If this looks a lot like Rails, that's no coincidence. Rails has been doing control routing in a web-based MVC pattern right ever since it first came out, and it has only been getting better. ASP.NET is playing catch-up in this regard. So out of the box you might be able to get URLs that look like /Customers/List/1, etc.
  • Apparently the out of the box URL mapping mechanism is totally pluggable and you can provide your own URL mapping mechanism by implementing an interface. REST anyone??
  • Supports dynamic languages as well as static. My guess is that the work that is going into Project Jasper is being back-fitted to work more generically with static languages and the MVC framework is what we're getting out of it, since Jasper is a dynamic-language Rails-esque implementation that includes data access.

Having spent so much of my life working with real, live, production-running ASP.NET applications (which includes real, live, production-sized headaches!) I am definitely curious about this new MVC framework. Admittedly I'm a little jaded because I figure any enterprise-class web application development environment that ships without the ability to create a pure MVC environment is incomplete and broken. So, while I must consider this MVC framework a patch to an incomplete ASP.NET implementation, I'm still pretty damn excited about it.

I'm thinking that once I get my grubby hands on Astoria, Silverlight, this MVC framework, and all that running on top of the .NET Framework 3.5, I'll be like a kid in a candy store. It might be a rather dull candy store that sells business requirement caramels, but a candy store it will be nonetheless!!

tags:    
links: digg this  del.icio.us  technorati  reddit

More Stories By Kevin Hoffman

Kevin Hoffman, editor-in-chief of SYS-CON's iPhone Developer's Journal, has been programming since he was 10 and has written everything from DOS shareware to n-tier, enterprise web applications in VB, C++, Delphi, and C. Hoffman is coauthor of Professional .NET Framework (Wrox Press) and co-author with Robert Foster of Microsoft SharePoint 2007 Development Unleashed. He authors The .NET Addict's Blog at .NET Developer's Journal.

Comments (1) View Comments

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


Most Recent Comments
.NET News Desk 10/13/07 04:18:50 PM EDT

Just this morning I saw a blog post containing some details about Microsoft's new and upcoming MVC framework for ASP.NET. I'm actually a little shocked - the sheer amount of 'stuff' that is being piled into the Visual Studio 2008 release is positively staggering, though technically this looks like it will be released as an 'add-on' to Visual Studio 2008 sometime in early '08.