Develop with ASP.NET MVC

Overview

ASP.NET MVC (MVC) is an alternative to the classic WebForms model in ASP.NET for creating web applications. MVC is an architectural pattern that separates an application into the three components – the “model”, the “view”, and the “controller”. These three components represent the business logic, the user interface logic (UI), and the input logic, respectively.

MVC components

  • Model - holds and manages the business logic, rules, and data. For example, the data received when users fill in a form on your website is stored in a specific database and retrieved in a specific way.
  • View - displays the application’s UI, that is, present the information to the user. For example, the form a user sees on a webpage, along with dropdown menus, radio buttons, text, and so forth.
  • Controller - handles user interaction and processes input by working with the model and rendering the right view to display the UI. For example, when a user completes a form on the UI, the controller sends the information to the model and the “Form complete” confirmation is displayed.

This pattern applies the principle of a “separation of concerns” in application development, so that each of the components is responsible for one function only. While components are loosely coupled, the separation helps you manage the complexity of your web application since you focus on one aspect of the implementation at a time.

The following diagram illustrates how MVC components work together:

mvc

In addition, with MVC you can benefit from all ASP.NET features, for example forms and Windows authentication, caching, master pages, and so on.

This section contains

ASP.NET Core vs ASP.NET MVC
MVC vs ASP.NET Core frontend comparison
Develop with Sitefinity CMS and ASP.NET MVC
Implement custom controllers and views and use them in Sitefinity CMS project. Combine WebForms and MVC widgets on the same page. Create new functionality using MVC.
Develop widgets
Create new Sitefinity CMS MVC widgets from scratch and implement your own logic and customize the built-in functionality of widgets.
Widget designers
Work with Sitefinity CMS MVC widget designer framework, based on client technologies like HTML, JavaScript, AngularJS, and Bootstrap. Work with a library of reusable client components.
Want to learn more?
Enhance your Sitefinity skills by enrolling in free training sessions. Become Sitefinity certified through Progress Education Community to strengthen your professional credentials.
This Article Contains
New to Sitefinity?