Introduction
ASP.NET MVC framework follows the
well-defined MVC pattern to create a web application. MVC design pattern is
used to separate the different parts of the application for more scalability,
extensibility and testability purposes.
One of the major challenges with
normal web forms is the testability of the business logic. Unit test of
code-behind logic is very complex. Also, the extensibility of the application
required a lot of re-work on the application. ASP.NET MVC addresses the pain
points associated with the traditional web form applications.
MVC means Model View Controller.
Controller takes care of the overall execution of a request. Controller
receives the request from the web server and identifies the data requirements.
Depending on the data requirements, Controller contacts the corresponding
Model. Model will supply the required data, which will be rendered to the UI
using a View.
Background
Model-View-Controller as the name
applies considers three pieces:
- Model: it should be responsible for the data of the application domain
- View: it presents the display of the model in the user interface
- Controller: it is really the heart of the MVC, the intermediary that ties the Model and the View together, i.e. it takes user input, manipulates the model & causes the view to update
For more
information about MVC, please see the following article from Wikipedia
