What is ASP.NET MVC?
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
- 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 presentationof 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