
Huge thanks to WROX for sponsoring the Tampa ASP.NET MVC Developer Group and sending us several copies of Professional ASP.NET MVC 1.0
by Rob Conery, Scott Hanselman, Phil Haack, and Scott Guthrie. I'll be giving away a few copies each month to those developers that finish the monthly homework assignments :)
Professional ASP.NET MVC 1.0 is a great book in my humble opinion. It has just the right balance of beginner / introductory content and advanced topics that I think it will be appreciated by both those developers new to the ASP.NET MVC 1.0 Framework and those who have just started working with the MVC Framework since its release.
The first 164 pages are dedicated to the Nerddinner.com walkthrough, which takes you through creating the Nerddinner.com website step-by-step. There are plenty, and I mean plenty, of screenshots making this a very good introduction to the ASP.NET MVC Framework for those who have not played with it. The Nerddinner.com walkthrough also touches upon dependency injection and Unit Testing in a very approachable manner for those who have not yet embraced these concepts.
Once you get done with the nice Nerddinner.com walkthrough, they toss an obligatory chapter at you that positions ASP.NET MVC to Webforms as well as compares ASP.NET MVC to other competing technologies, like Ruby on Rails, Django, MonoRail, etc. This was written to answer the questions as to why we have another web framework and when you might want to use it over the current Webforms framework.
You then start diving into several chapters that walk you through the following concepts:
- Chapter 4 - Routes and URLs
- Chapter 5 - Controllers
- Chapter 6 - Views
- Chapter 7 - AJAX
- Chapter 8 - Filters
- Chapter 9 - Securing Your Application
- Chapter 10 - Test-Driven Development with ASP.NET MVC
- Chapter 11 - Testable Design Patterns
- Chapter 12 - Best of Both Worlds - Web Forms and MVC Together
Again, what makes this book good is that it just doesn't stop at the basics. Professional ASP.NET MVC 1.0 talks about various ways to take advantage of the extensibility in the ASP.NET MVC Framework as well as discusses various classes and their role in the flow of an ASP.NET MVC 1.0 Request. You will get various low-level and advanced tips like:
- How the ControllerActionInvoker chooses an action method to handle the request
- Concept of Implicit Action Results
- Details of ViewEngines and ActionResults
- The subtleties of creating custom filters and when they run
- A whole chapter on various techniques to secure your ASP.NET MVC Web Application
- Techniques for testing routes, controllers, views, etc.
As you read through the book the authors will generously sprinkle Product Team Asides in the text, which give you a little peek at the decisions made by the team and their personal thoughts on various topics. This is something I enjoyed in Framework Design Guidelines and works well here, too.
I highly recommend Professional ASP.NET MVC 1.0
if you are looking for a good first book on the ASP.NET MVC Framework that not only introduces you to the ASP.NET MVC Framework, but talks about some extensibility points that you may want to take advantage of in your applications.
David Hayden