When Manning Publications approached me to write the first edition of this book, I was already a frequent blogger on the topic of ASP.NET MVC and had already published an article on the framework in CODE Magazine. Ben Sheirman, Jimmy Bogard, and I worked on the first edition of ASP.NET MVC in Action for over a year, and I was very excited to see it published in late 2009 and very well received by the developer community. Microsoft continued to release incremental previews of the next version, ASP.NET MVC 2. For this book, we brought on two new members to the author team: Eric Hexter and Matthew Hinze. The five of us started working on ASP.NET MVC 2 in Action in late 2009 with framework knowledge we cultivated in the field and experience as authors that we’d gained writing the first book.
What Microsoft did with the ASP.NET MVC release cycle was unprecedented compared to previous projects in the Developer Division. The project was released at least quarterly on the CodePlex site, source code and all. It was also developed using test-driven development as the software construction technique. Full unit test coverage is included in the source code download, and ASP.NET MVC was released under the MS-PL and OSI-approved open source license.
ASP.NET MVC 2 works the same way the web works. It’s a natural fit. Although Microsoft is the last to the table with a Model-View-Controller framework for their development platform, this framework is a strong player. Its design focuses on the core abstractions first. It is also conducive to extension by the community. In fact, the same week the first Community Technology Preview (CTP) was released, Eric Hexter and I launched the MvcContrib open source project with an initial offering of extensions that integrated with the ASP.NET MVC Framework. MvcContrib was subsequently accepted as the first community project by the CodePlex Foundation, a group that facilitates corporate contributions to open source.
ASP.NET MVC 2 is a frequently used tool at Headspring Systems, where I facilitate the consulting practice. For the .NET industry as a whole, in 2009, I predicted that ASP.NET MVC 2 would be considered the norm for ASP.NET development by 2011. Here in 2010, that prediction may come true early. New developers are coming to the .NET platform every day, and for web developers, ASP.NET MVC 2 is much simpler to ramp up on. Because of the decreased complexity, the barrier to adoption is lowered, and because of its simplicity, it can grow to meet the demands of some of the most complex enterprise systems.
Meanwhile, this knowledge has been of direct and immediate benefit to our client projects. Leveraging the framework on client projects has definitely helped increase the quality of information contained in the book, because the book is based on hands-on experience. We have seen successes, and we have found some things that don’t work. We’ve brought these lessons to bear in this text for your benefit, and we hope that this book will stay with you even after you have written your first application.
Although other platforms have benefited from Model-View-Controller frameworks for many years, the MVC pattern is still foreign to many .NET developers. This book explains how and when to use the framework as well as the theory and principles behind the pattern and complimentary patterns. We hope that this book will help enlighten you regarding an indispensable technology that’s very simple to learn.