Differences Between ASP.Net and ASP.Net Core - ASP.Net vs ASP.Net Core
What is Asp.net?
Asp.Net works on HTTP (Hypertext Transfer Protocol) and uses the HTTP commands and policies to set a browser to server bilateral communication.
ASP.NET is a part of the Microsoft .NET Framework. The following image shows the component stack.
ASP.NET provides three development styles for creating web applications:
- Web Forms
- ASP.NET MVC
- ASP.NET Web Pages
- Web Forms: ASP.NET web forms extend the event-driven model of interaction to web applications. It is used to develop an application with data access and also provide server-side and event to create an application.
- Asp.Net MVC: it gives an MVC (Model-View-Controller) patterns base way builds the dynamic website. Those patterns use to user-interface(View), data(Model), and application logic(controller). The model is responsible for maintaining application data and logic. The view is a user interface of the application, which displays the data. The controller handling user request passes the request View and model.
- Asp.Net Web Pages: It is used to create dynamic web pages. It combines a server code with HTML in a fast way.
The following table illustrates each development model.
|Web Forms||Win Forms, WPF, .NET||Rapid development using a rich library of controls that encapsulate HTML markup||Mid-Level, Advanced RAD|
|MVC||Ruby on Rails, .NET||Full control over HTML markup, code and markup separated, and easy to write tests. The best choice for mobile and single-page applications (SPA).||Mid-Level, Advanced|
|Web Pages||Classic ASP, PHP||HTML markup and your code together in the same file||New, Mid-Level|
The ASP.NET application code can be written in any of the following languages:
ASP.NET Architecture and its Components:
ASP.NET basic architecture is shown below.
This .NET framework has the following key components.
- Language - A .NET Framework is a variety of programming languages including VB.NET and C#.
- Library - The .NET Framework is a set of a standard class library of reusable classes, interfaces, and value types for ASP .NET development process and system functionality.
- Common Language Runtime(CLR) - The CLR is used to performing code activities. Activities include exception handling and garbage collection mostly.
What Is Asp.net Core:
Asp.net Core is a new version of Asp.net released by Microsoft. It is an open-source used to develop a web framework and can be executed with different browsers like Windows, Mac or Linux. ASP.Net is a new version of asp.net. It is a free open source which can run on different OS like Mac, Windows and Linux. It was originally launched as an ASP.NET 5 but later it was renamed to ASP.NET Core and still with the same name.
Asp.Net Core is a cloud-based cross-platform framework to build web apps on Windows, Mac, and Linux including the MVC framework. It is a combination of MVC and WEB API in a single web programming framework.
Major Benefits of ASP.Net Core:
- Asp.Net core is a much leaner and modular framework because of multiple of architecture
- Asp.net Core is an open-source framework.
- Easy to build cross-platform asp.net app on Windows, Mac, and Linux.
- The configuration is a cloud-ready environment.
- Ability to host on:
ASP.NET Core Version History:
|ASP.NET Core 2.1||May 2018|
|ASP.NET Core 2.0||August 2017|
|ASP.NET Core 1.1||November 2016|
|ASP.NET Core 1.0||June 2016|
Difference Between Asp.Net VS Asp.Net Core
|Asp.Net Build for Windows||Asp.Net Core Build for Windows, Mac and Linux|
|Asp.Net has a Good Performance||ASP.Net core has higher performances than ASP.Net 4x.|
|It runs on .Net Framework or commonly called as full .Net Framework||It runs on .Net Core and Full .Net Framework.|
|Asp.Net Supports WebForm, Asp.Net MVC and Asp.Net WebAPI.||Asp.Net Core does not support WebForm. It supports MVC, Web API and Asp.Net Web pages originally added in .Net Core 2.0.|
|Asp.Net used the only IIS with dependant on System.web.dll.||Asp.Net Core has not dependant System.web.dll and so the IIS.|
|Support C#, VB and many other languages and also support WCF, WPF and WF||Support only C#, F# language. VB support to added a short time and no support WCF, WPF and WF but support for WCF client libraries are available.|
|Asp.Net MVC application added Web.config, Global.asax, Application Start.||Core did not support Web.config and Global.asax files. It is supporting appsettings.json.|
|Container support not more than better as the ASP.Net Core application.||Container support best suited for deployments like Docker.|
|All major versions supported||Support Core from Visual Studio 2015 update 3 and current version VS 2017.|
|We Need to re-compile after the code change.||Core Browser refresh will compile and executed the code no need for re-compile.|