37.2. ASP.NET MVC

Since the late 1990s the most common architectural pattern employed to build large web applications has been the n-tier architectural pattern. Most implementations of n-tier applications use three tiers: a presentation tier that contains the user interface code, a business logic tier that provides the core processing logic for the application, and a data access tier that is responsible for retrieving and saving information to a backend data store.

One of the problems with this architecture is that there can be a tendency for business-logic and data-access code to migrate up through the tiers until it is irrevocably intertwined with the user interface code. With ASP.NET Web Forms, which support the n-tier architecture, you do need a degree of discipline to ensure that this does not happen. It is all too common to see ASP.NET applications where SQL queries are hardcoded as strings and embedded into data access code within an event handler of a web control.

An alternate architectural pattern that has been growing in popularity over the past few years is Model-View-Controller (MVC). The MVC architectural pattern does a much better job of encouraging and enforcing a clear separation of components into application control, business logic, and UI presentation.

ASP.NET MVC provides a framework that enables you to easily create applications that use the MVC architectural pattern on the ASP.NET platform. First announced at the ALT.NET conference in late 2007, ASP.NET MVC ...

Get Professional Visual Studio® 2008 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.