ASP.NET MVC Framework is a light-weight and highly testable presentation framework. It integrated with ASP.NET features and it is an alternative to ASP.NET Web forms for creating web applications. The latest version of MVC Framework is 5.0 and it is defined in the System.Web.Mvc assembly.
MVC (Model-View-Controller) is an architectural pattern that separates an application into three main components such as Model, View, and Controller.
The model component represents the transfer of data between the View and the Controller components or any other business logic related data. It corresponds to all data-related logic used by the user.
The View component displays the application’s user interface (UI).This UI is created from the model data.
The Controller handles and responds to user input and interaction. It acts as an interface between the Model and View components.
Advantages of MVC Framework:
- Provides better support for test-driven development (TDD).
- Modifications does not affect the entire model
- Easier to manage the complexities by dividing the application.
- Suitable for web applications which need a high degree of control over the application behavior.
Disadvantages of MVC Framework:
- High complexity
- Difficult to use in modern user interface
- Need multiple programmers
- Inefficiency of data access in view