ASP.NET MVC Framework

From Wikipedia, the free encyclopedia
Jump to: navigation, search
ASP.NET MVC Frameworks
Developer(s) Microsoft
Stable release 5.2 / July 1, 2014 (2014-07-01)
Development status Active
Written in C#, VB.NET[1]
Operating system Cross-platform
Platform .NET Framework, Mono
Type Web application framework
License Apache License 2.0

The ASP.NET MVC is an open source web application framework that implements the model–view–controller (MVC) pattern.


Based on ASP.NET, ASP.NET MVC allows software developers to build a web application as a composition of three roles: Model, View and Controller. The MVC model defines web applications with 3 logic layers:

  • Model (business layer)
  • View (display layer)
  • Controller (input control)

A model represents the state of a particular aspect of the application. A controller handles interactions and updates the model to reflect a change in state of the application, and then passes information to the view. A view accepts necessary information from the controller and renders a user interface to display that information.[2]

In April 2009, the ASP.NET MVC source code was released under the Microsoft Public License (MS-PL).[3]

ASP.NET MVC framework is a lightweight, highly testable presentation framework that is integrated with existing ASP.NET features. Some of these integrated features are master pages and membership-based authentication. The MVC framework is defined in the System.Web.Mvc assembly.[4]

The ASP.NET MVC Framework couples the models, views, and controllers using interface-based contracts, thereby allowing each component to be tested independently.

Apache License 2.0 release[edit]

In March 2012, Scott Guthrie announced on his blog that Microsoft had released part of their web stack (including ASP.NET MVC, Razor and Web API) under an open source license (Apache License 2.0).[5]

Guthrie wrote that "Doing so will enable a more open development model where everyone in the community will be able to engage and provide feedback on code checkins, bug-fixes, new feature development, and build and test the products on a daily basis using the most up-to-date version of the source code and tests. ".

The source code now resides on CodePlex. ASP.NET Web Forms was not included in this initiative for various reasons.[6]

Release history[edit]

Release history
Date Version
10 December 2007 ASP.NET MVC CTP
13 March 2009 ASP.NET MVC 1.0[7]
16 December 2009 ASP.NET MVC 2 RC[8]
4 February 2010 ASP.NET MVC 2 RC 2[9]
10 March 2010 ASP.NET MVC 2[10]
6 October 2010 ASP.NET MVC 3 Beta[11]
9 November 2010 ASP.NET MVC 3 RC[11]
10 December 2010 ASP.NET MVC 3 RC 2[12]
13 January 2011 ASP.NET MVC 3[13]
20 September 2011 ASP.NET MVC 4 Developer Preview[14]
15 February 2012 ASP.NET MVC 4 Beta[15]
31 May 2012 ASP.NET MVC 4 RC[16]
15 August 2012 ASP.NET MVC 4[17]
30 May 2013 ASP.NET MVC 4 4.0.30506.0 [18]
26 June 2013 ASP.NET MVC 5 Preview [19]
23 August 2013 ASP.NET MVC 5 RC 1[20]
17 October 2013 ASP.NET MVC 5[20]
17 January 2014 ASP.NET MVC 5.1[20]
10 February 2014 ASP.NET MVC 5.1.1[20]
4 April 2014 ASP.NET MVC 5.1.2[20]
22 June 2014 ASP.NET MVC 5.1.3[20]
1 July 2014 ASP.NET MVC 5.2.0[20]
28 August 2014 ASP.NET MVC 5.2.2 RC[20]

View engines[edit]

The view engines used in the ASP.NET MVC 3 and MVC 4 Frameworks are the Razor View Engine and the Web Forms view engine. Both view engines are part of the MVC 3 framework. By default, the view engine in the MVC framework uses Razor .cshtml and .vbhtml, or Web Forms .aspx pages to design the layout of the user interface pages onto which the data is composed. However, different view engines can be used.[21] Additionally, rather than the default ASP.NET Web Forms postback model, any interactions are routed to the controllers using the ASP.NET Routing mechanism. Views can be mapped to REST-friendly URLs.[2]

Other view engines:

See also[edit]


  1. ^ Intro to ASP.NET MVC 3 (VB)
  2. ^ a b Scott Guthrie. "ASP.NET MVC Framework". Archived from the original on 22 October 2007. Retrieved 2007-10-23. 
  3. ^ Scott Guthrie. "ASP.NET MVC 1.0 Source Released". Archived from the original on 3 April 2009. Retrieved 2009-04-02. 
  4. ^ ASP.NET MVC
  5. ^ Scott Guthrie. "ASP.NET MVC, Web API, Razor and Open Source". Archived from the original on 28 March 2012. Retrieved 29 March 2012. 
  6. ^ Scott Hanselman. "ASP.NET MVC 4, ASP.NET Web API and ASP.NET Web Pages v2 (Razor) now all open source with contributions". Archived from the original on 28 March 2012. Retrieved 29 March 2012. 
  7. ^
  8. ^
  9. ^
  10. ^
  11. ^ a b
  12. ^
  13. ^
  14. ^
  15. ^
  16. ^
  17. ^
  18. ^
  19. ^
  20. ^ a b c d e f g h
  21. ^ "Scott Hanselman's ASP.NET MVC Preview 2 Screencast Tutorials". Archived from the original on 2rajaneesh kumar premee October 2008. Retrieved 2008-10-13.  Check date values in: |archivedate= (help)

Further reading[edit]

  • Jon Galloway, Phil Haack, Brad Wilson, and K. Scott Allen, Professional ASP.NET MVC 3, Wrox, 2011, ISBN 1-118-07658-3
  • Jeffrey Palermo, Ben Scheirman, Jimmy Bogard, and Eric Hexter, ASP.NET MVC 2 in Action, Manning Publications, 2010, ISBN 1-935182-79-X
  • Steven Sanderson, Adam Freeman, Pro ASP.NET MVC 3 Framework, Second Edition, Apress, 2011, ISBN 1-4302-3404-0
  • Jonathan McCracken, Test-Drive ASP.NET MVC, Pragmatic Bookshelf, 2010, ISBN 1-934356-53-0
  • Stephen Walther, ASP.NET MVC Framework Unleashed, Sam's, 2009, ISBN 0-672-32998-0

Commercial and non-commercial projects[edit]

Sample projects[edit]

External links[edit]