The MVC Pattern (Model View Controller Pattern) is based on the concept of designing an application by dividing its functionalities into 3 layers. Its like a triad of components. The Model component contains the business logic, or the other set of re-usable classes like classes pertaining to data access, custom control classes, application configuration classes etc. The Controller component interacts with the Model whenever required. The control contains events and methods inside it, which are raised from the UI which is the View component.
Consider an ASP.NET web application. Here, all aspx, ascx, master pages represent the View. The code behind files (like aspx.cs, master.cs, ascx.cs) represent the Controller.
The classes contained in the App_Code folder, or rather any other class project being referenced from this application represent the Model component.
- Business logic can be easily modified, without affecting or any need to make changes in the UI.
- Any cosmetic change in the UI does not affect any other component.