A Brief History of ASP.NET MVC Framework

A Brief History of ASP.NET MVC Framework

01 Apr 2024
Beginner
186K Views
9 min read

ASP.NET MVC Framework: An Overview

ASP.NET MVC is a new framework built on top of Microsoft .Net Framework to develop the web application. This framework implements the MVC pattern which helps to provide separation of code and also provides better support for test-driven development (TDD).Asp.Net MVC is a lightweight and highly testable open-source framework for building highly scalable and well-designed web applications. Here is the list of the released version history of ASP.NET MVC Framework with their features. In this MVC Tutorial, we will explore more about the MVC Framework which will include the asp.net MVC release history, and asp.net MVC history, comparing various asp.net MVC versions and Features of the ASP.NET MVC Framework.

What is the ASP.Net MVC Framework

Basically, MVC is a framework methodology that divides an application's implementation into three component roles: models, views, and controllers. Hence in Asp.net MVC, you need to play with controllers, actions, and views.

MVC Pattern

The Model-View-Controller (MVC) pattern is an adaptation of a pattern generated from the Smalltalk community in the 1970s by Trygve Reenskaug. It was popularized for use on the web with the advent of Ruby on Rails in 2003.

  • Model
  • View
  • Controller

Let's see one by one,

  • Model

Models in an MVC-based application are the components of the application that are responsible for maintaining the state. Often this state is persisted inside a database for example: we might have a Product class that is used to represent order data from the Products table inside SQL.

Mode

  • View

Views in an MVC-based application are the components responsible for displaying the application's user interface. Typically this UI is created off of the model data for example: we might create a Product "Edit" view that surfaces textboxes, dropdowns, and checkboxes based on the current state of a Product object.

  • Controller

Controllers in an MVC-based application are the components responsible for handling end-user interaction, manipulating the model, and ultimately choosing a view to render to display UI. In an MVC application, the view is only about displaying information - it is the controller that handles and responds to user input and interaction.

Asp.net MVC history

  • ASP.NET is a free framework for developing websites and web applications on .NET Framework using HTML, CSS, and JavaScript.
  • It is a web framework based on Model-View-Controller (MVC) architecture.
  • ASP.NET MVC was introduced in .NET 3.5, and since then lots of new features have been added.
  • It is introduced by Microsoft.
  • Microsoft made this framework open-source in April 2009 and The source code was released under the Microsoft Public License (MS-PL)

MVC framework version comparison

Asp.Net MVC1

  1. Released on Mar 13, 2009

  2. Runs on .Net 3.5 and with Visual Studio 2008 & Visual Studio 2008 SP1

  3. MVC Pattern architecture with WebForm Engine

  4. Html Helpers

  5. Ajax helpers

  6. Routing

  7. Unit Testing

Asp.Net MVC2

  1. Released on Mar 10, 2010

  2. Runs on .Net 3.5, 4.0 and with Visual Studio 2008 & 2010

  3. Strongly typed HTML helpers mean lambda expression HTML Helpers

  4. Templated Helpers

  5. Support for Data Annotations Attribute

  6. Client-side validation

  7. UI helpers with automatic scaffolding & customizable templates

  8. Attribute-based model validation on both client and server

  9. Overriding the HTTP Method Verb including GET, PUT, POST, and DELETE

  10. Areas for partitioning large applications into modules

  11. Asynchronous controllers

Asp.Net MVC3

  1. Released on Jan 13, 2011

  2. Runs on .Net 4.0 and with Visual Studio 2010

  3. The Razor View engine

  4. Improved Support for Data Annotations

  5. Remote Validation

  6. Compare Attribute

  7. Sessionless Controller

  8. Child Action Output Caching

  9. Dependency Resolver

  10. Entity Framework Code First support

  11. Partial-page output caching

  12. ViewBag dynamic property for passing data from controller to view

  13. Global Action Filters

  14. Better JavaScript support with unobtrusive JavaScript, jQuery Validation, and JSON binding

  15. Use of NuGet to deliver software and manage dependencies throughout the platform

  16. Good Intellisense support for Razor in Visual Studio

Asp.Net MVC4

  1. Released on Aug 15, 2012

  2. Runs on .Net 4.0, 4.5 and with Visual Studio 2010SP1 & Visual Studio 2012

  3. ASP.NET Web API

  4. Enhancements to default project templates

  5. Mobile project template using jQuery Mobile

  6. Display Modes

  7. Task support for Asynchronous Controllers

  8. Bundling and minification

  9. Support for the Windows Azure SDK

Asp.Net MVC5

  1. Released on 17 October 2013

  2. Runs on .Net 4.5, 4.5.1 and with Visual Studio 2013

  3. One Asp.Net

  4. Asp.Net Identity

  5. ASP.NET Scaffolding

  6. Authentication filters - run prior to authorization filters in the ASP.NET MVC pipeline

  7. Bootstrap in the MVC template

  8. ASP.NET Web API2

The asp.net MVC release history:

Features of the ASP.NET MVC Framework.

1. Attribute Routing

  • The major difference between ASP.NET MVC and ASP.NET web forms is the way incoming requests are handled.
  • MVC routing pattern maps URLs with action methods,
  • To see where routes are configured, First go to the solution explorer of ASP.NET MVC application find the App_Start folder, and find the RouteConfig.cs file.
  • It contains a method named RegisterRoutes.
  • Inside this RegisterRoutes method are routes that are to be ignored,routes that are to be added can be defined. This is shown in the following code snippet:
     
    public static void RegisterRoutes(RouteCollection routes){
    routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
    routes.MapRoute(
    name: "Default",
    url: "{controller}/{action}/{id}",
    defaults: new { controller = "Home", action = "Index", id = UrlParameter.Option }
    );
    }
    
  • Apart from defining routes in the RouteConfig.cs file, ASP.NET MVC 5 has introduced a new feature.
  • This new feature is called attribute routing which allows developers to specify a route as an attribute of the action method.
  • To enable attribute routing, we need to modify the RegisterRoutes method of the RouteConfig.cs file as follows:
     
    
    public static void RegisterRoutes(RouteCollection routes)
    {
    routes.MapMvcAttributeRoutes();
    }
    

2. Bootstrap

MVC 5 replaced the default MVC template with a much more flexible and standardized CSS library called Bootstrap. With the integration of it in MVC 5, programmers have got a myriad of styling options right out of the box.

3. Identity Management

It has introduced a more robust, secure, and flexible identity management mechanism. So the developers need not explicitly manage the identity and authentication of users. The ASP.NET MVC features come built-in with the framework and can be easily tweaked to achieve the desired identity and authentication operations. Also, it provides authentication and logic features via third-party applications such as Facebook, Google, and Twitter, all of them right out of the box.
Conclusion
I hope you found this article useful and if you think I missed anything important, let me know. I would like to have feedback from my blog readers. Your valuable feedback, questions, or comments about this article are always welcome. Also, Consider our ASP.NET MVC Course for a better understanding of all MVC concepts.

FAQs

Q1. What is the history of MVC framework?

The MVC pattern was first introduced in 1979 by computer scientist Trygve Mikkjel Heyerdahl Reenskaug.

Q2. What is the history of ASP.NET framework?

It was first released in January 2002 with version 1.0 of the . NET Framework and is the successor to Microsoft's Active Server Pages (ASP) technology. 

Q3. What is ASP.NET MVC framework?

ASP.NET MVC is a web application framework developed by Microsoft that implements the model–view–controller (MVC) pattern.

Q4. What is MVC brief explanation?

MVC (Model-View-Controller) is a pattern in software design commonly used to implement user interfaces, data, and controlling logic.
Share Article

Live Classes Schedule

Our learn-by-building-project method enables you to build practical/coding experience that sticks. 95% of our learners say they have confidence and remember more when they learn by building real world projects.
ASP.NET Core (Project) Jun 23 SAT, SUN
Filling Fast
08:30PM to 10:30PM (IST)
Get Details
.NET Solution Architect Certification Training Jun 23 SAT, SUN
Filling Fast
05:30PM to 07:30PM (IST)
Get Details
ASP.NET Core Certification Training Jun 30 SAT, SUN
Filling Fast
10:00AM to 12:00PM (IST)
Get Details
Advanced Full-Stack .NET Developer Certification Training Jun 30 SAT, SUN
Filling Fast
10:00AM to 12:00PM (IST)
Get Details

Can't find convenient schedule? Let us know

About Author
Shailendra Chauhan (Microsoft MVP, Founder & CEO at Scholarhat by DotNetTricks)

Shailendra Chauhan is the Founder and CEO at ScholarHat by DotNetTricks which is a brand when it comes to e-Learning. He provides training and consultation over an array of technologies like Cloud, .NET, Angular, React, Node, Microservices, Containers and Mobile Apps development. He has been awarded Microsoft MVP 8th time in a row (2016-2023). He has changed many lives with his writings and unique training programs. He has a number of most sought-after books to his name which has helped job aspirants in cracking tough interviews with ease.
Accept cookies & close this