Chapter 16. Extending ASP.NET MVC

At this point in the book, you have explored all the major features of the ASP.NET MVC framework. You've looked at components and action filters. You've explored routing, controllers, and views, and you might have noticed that almost any part of the framework can be replaced; if you don't like something, you can replace it with your own implementation of it. That's because the other big architectural guideline followed by the ASP.NET MVC team was to allow maximum extensibility.

This chapter shows you how to exploit that extensibility for your project. You see:

  • What the main extensibility points are

  • How to customize the main aspects of the framework (routing, action execution, view engines)

  • How to use these custom implementations

  • What the open source project MvcContrib is

  • What some of the alternative view engines offer

This chapter is a bit more advanced than the other ones, because it delves into some of the internals of the framework. If you don't feel confident yet, I suggest you go back and review the chapters about routing, controllers, views, and unit testing.

Introduction to Extensibility

What is extensibility? This may seem like a simple question to answer, but before diving into this long chapter, it's better to make sure that we are on the same page about the meaning of the word. The Merriam-Webster dictionary says that extensibility is the "capability of being extended."

Transferred to computing science, extensibility is the quality of a software ...

Get Beginning ASP.NET MVC 1.0 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.