What is ASP.NET CORE

What is ASP.NET CORE?Asp.net core is a free and open source web framework used to develop the next generation of ASP.NET applications. ASP.NET Core is developed and powered by Microsoft as well as the community user base

It is a modular Framework that has the capability to run on legacy .NET Framework that runs on Windows as well as on cross platform systems

Originally it was called asp.net next version and then later it was supposed to be called asp.net 5 when it is ready. However, Microsoft later changed the name to ASP.NET core during the first release. The first version was released on 17th may 2016

As of this video recording asp .NET core 2.0 is being used and it was released on 14 August 2017

The first question that comes into our mind when we need to use asp.net core as we have The Legacy asp.net applications. If you take a look at the comparison table below given by Microsoft it’s fairly listed out when we need to choose asp.net core against ASP.NET

ASP.NET Core

ASP.NET

Build for Windows, macOS, or Linux

Build for Windows

Razor Pages is the recommended approach to create a Web UI with ASP.NET Core 2.0. See also MVC and Web API

In spite of these points, we can say that .NET Core is not a replacement for .NET Framework and we still need to use the .NET Framework applications when we need to use third party like .NET libraries where Nuget packages which are not available for any .NET Core apps.

We still need to use ASP.NET as we don't have capability of WCF service implementation using asp.net core at this point of time. However, the asp.net Core web applications can consume the WCF Services and they should not be a problem in the application development from the front end

Windows workflow Foundation related services and WCF Data Services are only available in .NET framework and Microsoft doesn't have any plans to bring this to ASP.NET Core

The windows presentation Foundation is still running on the sp.net and there are no plans to put them to the .NET Core.

Why should I choose and use ASP.NET Core?

Cloud based application development is current trend and using asp.net core along with a blend of cloud is an additional advantage for any developer to learn asp.net Core applications

Microsoft is moving towards community based application development rather than their traditional application development which brings the change faster to the asp.net core and gives an advantage over the traditional asp.net applications

Why is Microsoft Promoting Core?

Developers don’t stick to SQL server development

Platform Independence is in demand

Flexibility in hosting apps to Amazon/Google/Microsoft clouds

Community development brings rapid changes

I hope the above points clarify why Microsoft is proceeding towards the direction of ASP.NET Core

Features of ASP.NET Core

Improved support for cloud development

Nuget based support

High performance

Modular framework

Cross platform compatibility

Flexibility of being open source

Hosting independence

Built-in support for dependency injection

Support for JSON based configuration

Unit testing with xunit.net

What Next?In the next session, Lets learn how to create and run a web application using ASP.NET Core