ASP.NET MVC is a part of the ASP.NET Web application framework. It is one of the
two different programming models you can use to create ASP.NET Web
applications,the other being ASP.NET Web Forms.
An MVC Application is designed and implemented using the following three
attributes
Resource taken from www.asp.net/mvc/whatisaspmvc
- Model: The model contains the core information for an
application. This includes the data and validation rules as well as data access
and aggregation logic.
- View: The view encapsulates the presentation of the
application, and in ASP.NET this is typically the HTML markup.
- Controller: The controller contains the control-flow logic. It
interacts with the Model and Views to control the flow of information and
execution of the application.
This separation of entity allows you to have nimbleness and flexibility in
building and maintaining your application. For example, by separating the views,
you can iterate on the appearance of your application without touching on any of
the core business logic. You can also separate work by role, so that, for
example designers can work on the views, while developers work on the model.
ASP.NET MVC brings the power of this development paradigm to ASP.NET
development, allowing you to use your .NET development skills to build MVC
applications.
It gives you
- Complete control over your HTML Markup
- Enables rich AJAX and jQuery integration
- Allows you to create SEO-friendly URLs for your site
- Makes Test Driven Development (TDD) easy