The Original MVC Framework

In October 2007, Microsoft announced a new development platform, built on the existing ASP.NET platform, that was intended as a direct response to the criticisms of Web Forms and the popularity of competing platforms such as Ruby on Rails. 


The new platform was called the ASP.NET MVC Framework and reflected the emerging trends in web application development, such as HTML and CSS standardization, RESTful web services, effective unit testing, and the idea that developers should embrace the stateless nature of HTTP. 

The concepts that underpin the original MVC Framework seem natural and obvious now, but they were lacking from the world of .NET web development in 2007. 

The introduction of the ASP.NET MVC Framework brought Microsoft’s web development platform back into the modern age. The MVC Framework also signaled an important change in attitude from Microsoft, which had previously tried to control every component in the web application toolchain. 

With the MVC Framework, Microsoft built on open source tools such as jQuery, took on design conventions and best practices from competing (and more successful) platforms, and released the source code to the MVC Framework for developers to inspect.

What Was Wrong with the Original MVC Framework? 

At the time the MVC Framework was created, it made sense for Microsoft to create it on top of the existing ASP.NET platform, which had a lot of solid low-level functionality that provided a head start in the development process and which was already well-known and understood by ASP.NET developers. 

But compromises were required to graft the MVC Framework onto a platform that was originally designed for WebForms. MVC Framework developers became used to using configuration settings and code tweaks that disabled or reconfigured features that didn’t have any bearing on their web application but were required to get everything working. Learn more Visual studio training 

 As the MVC Framework grew in popularity, Microsoft started to take some of the core features and add them to WebForms. The result was increasingly odd, were features with design quirks required to support the MVC Framework was extended to support Web Forms, with further design quirks to make everything fit together.

 At the same time, Microsoft started to expand ASP.NET with new frameworks for creating web services (Web API) and real-time communication (SignalR). The new frameworks added their configuration and development conventions, each of which had its benefits and oddities, and the overall result was a fragmented mess.

Comments are closed