MVC stands for model view controller. It is architectural pattern or framework or standard software design pattern that splits an application into three main components i.e. Model, View and Controller for developing web application that are easy to maintain, well architect and highly testable in a different manner than the Asp.net web development.
It is stateless, so no ViewState and PostBack events so light weight, quick loading time.so fast in performance.
It is light-weight framework having some existing Asp.net features like master pages, user controls, Caching, validations and security features. It is used to build web applications that separate the different components such as Model (Business Logic), View (User Interface) and Controller (Input Logic or .cs). Developer can focus on implementing one component at a time, thus parallel development e.g. One developer can focus on the view, another developer can work on Model and third developer can focus on implementing controller logic.
MVC pattern above that both the view and the controller depend on the model. But the model is independent of the view and the controller both. This separation allows the model to be built and tested independent of the presentation (UI).
- MVC FLOW
- User communicates with the Controller.
- There is one-to-many relationship between Controller and View means one controller can mapped to multiple views.
- Controller and View can talk to each other.
- Model and View cannot talk to each other directly. They communicate to each other with the help of controller.