Friday 8 January 2016

Evolution of MVC with features

This article describes the different MVC evolution and its features. You can know the difference between  MVC3, MVC4, MVC5 and MVC6.

Features in MVC 3
·         Razor View Engine
·         Support .NET 4 data annotation.
·         Improved model validation.
·         Better JavaScript support,
·         Jquery validation
·         JSON binding
·         Support multiple view(Razor) engines.
·         start supporting to the HTML 5 and CSS 3.
·         Improved the Dependency Injection by using the IDependencyResolver interface.
·         added output caching for Partial views.

Features in MVC 4
·         Web API  framework. it works over the HTTP.
·         Enhancement to default project templates.
·         Mobile project template using Jquery mobile
·         Introduced to empty project template.
·         Task support for Asynchronous controller
·         Introduced to bundling and Magnification concepts.
·         Introduced to OAuth and OpenID login with the help of DotNetOpenAuth library.
·         Supports Windows Azure SDK 1.6.

Features in MVC 5
·         Identity for authentication and identity management.
·         Authentication and authorization (Membership provider ) for social networking site  like Google, facebook etc.
·         MVC 5 added  to authentication filters for authenticate to users using  third party authentication provider or your custom logic by using filter override methods and now we can override to filters on  method and  controller both.
·         Replaced to bootstrap by using the default template. and Controller Level.

Now, In MVC 5
·         Empty Template
·         Internet Application Template
·         Intranet Application Template
·         ASP.NET Web API Template
·         Mobile Project Template
·         Single Page Application Template
·         Asp.Net Identity
·         Bootstrap in the MVC 5 templates
·         Authentication Filters
·         Filter overrides

ASP.NET vNext or MVC6
·         MVC 6 Added new cloud computing optimization system of MVC , web API, SignalR and entity framework.
·         The Microsoft  make a bundle of MVC, Web API, WebPages, SignalR , That bundle we called MVC 6.
·         In MVC 6, Microsoft removed the dependency of system.web.dll from MVC 6  because it's so expensive. Typically  it consume 30K memory per request/response.
·         Right now, in MVC 6 consume 2K  memory per request response. It's too small memory consume.
·         Most of the problem solved using the Roslyn Compiler.
·         The work of Roslyn compiler as given below image.
·         The ASP .Net  vNext used the Roslyn Compiler,  By using Roslyn compiler do not need to compile the application Its  compile automatically the application code.
·         The .NET vNext is a cross platform and open source.
·         The .Net vNext has the new project extension project.json. Basically project.  Json contain the all dependency dll of the application.

·         In MVC 5.1 and 5.2 support to Enum and EnumHelper in  razor views.

2 comments: