简体   繁体   中英

Is .NET Core == .NET Framework 5?

I have been looking for books to study the latest .NET Framework. As far as I know .NET is up to 4.6 but ASP.NET is up to 5(Core)

Is .NET Core the name for .NET 5 or are we still currently at .NET 4.6?

To quote Scott Hansleman :

Naming is hard.

It's very easy to armchair quarterback and say that "they should have named it Foo and it would be easy" but very often there's many players involved in naming things. ASP.NET is a good 'brand' that's been around for 15 years or so. ASP.NET 4.6 is a supported and released product that you can get and use now from http://get.asp.net .

However, naming the new, completely written from scratch ASP.NET framework "ASP.NET 5" was a bad idea for a one major reason: 5 > 4.6 makes it seem like ASP.NET 5 is bigger, better, and replaces ASP.NET 4.6. Not so.

So we're changing the name and picking a better version number.

REINTRODUCING ASP.NET CORE 1.0 AND .NET CORE 1.0

  • ASP.NET 5 is now ASP.NET Core 1.0.
  • .NET Core 5 is now .NET Core 1.0.
  • Entity Framework 7 is now Entity Framework Core 1.0 or EF Core 1.0 colloquially.

Why 1.0? Because these are new. The whole .NET Core concept is new. The .NET Core 1.0 CLI is very new. Not only that, but .NET Core isn't as complete as the full .NET Framework 4.6. We're still exploring server-side graphics libraries. We're still exploring gaps between ASP.NET 4.6 and ASP.NET Core 1.0.

Update

On 7th of May 2019, Microsoft announced .NET 5

Today, we're announcing that the next release after .NET Core 3.0 will be .NET 5. This will be the next big release in the .NET family.

There will be just one .NET going forward, and you will be able to use it to target Windows, Linux, macOS, iOS, Android, tvOS, watchOS and WebAssembly and more.

.NET 5 = .NET Core vNext

.NET 5 is the next step forward with .NET Core. The project aims to improve .NET in a few key ways:

  • Produce a single .NET runtime and framework that can be used everywhere and that has uniform runtime behaviors and developer
    experiences.
  • Expand the capabilities of .NET by taking the best of .NET Core, .NET Framework, Xamarin and Mono.
  • Build that product out of a single code-base that developers (Microsoft and the community) can work on and expand together and that improves all scenarios.

For anyone ending up here after the fact, as of 6th May 2019, there is a new answer to what is all about. In summary, .NET Core and .NET Framework are coming together as .NET 5 and there will be " just one .NET going forward ".

We are also taking the opportunity to simplify naming. We thought that if there is only one .NET going forward, we don't need a clarifying term like “Core”. The shorter name is a simplification and also communicates that .NET 5 has uniform capabilities and behaviors.

The original announcement and the new .NET schedule can be found on the .NET Blog , and it was also discussed at Build 2019 in a Scott Hanselman session (timestamp: 52:30) entitled ".NET Platform Overview and Roadmap".

Actually since the 6th of May 2019 we can answer yes to this question, .NET Core will be renamed .NET 5 to be released in November 2020 and the traditional .NET Fx v4.x won't receive anymore love from MS.

All details in this 6th of May 2019 Microsoft blog post announcement: Introducing .NET 5

Recently Microsoft finished a few new articles at the new documentation site to cover related discussions, like this,

https://docs.microsoft.com/en-us/dotnet/articles/standard/choosing-core-framework-server

So you should treat .NET Core as a new platform, different from .NET Framework but with some similarity. To choose from them, you should check whether the benefits of .NET Core help your projects.

.NET 5.0 is the next major release of .NET Core following 3.1. We named this new release .NET 5.0 instead of .NET Core 4.0 for two reasons:

  • We skipped version numbers 4.x to avoid confusion with .NET Framework 4.x.
  • We dropped "Core" from the name to emphasize that this is the main implementation of .NET going forward. .NET 5.0 supports more types of apps and more platforms than .NET Core or .NET Framework. ASP.NET Core 5.0 is based on .NET 5.0 but retains the name "Core" to avoid confusing it with ASP.NET MVC 5. Likewise, Entity Framework Core 5.0 retains the name "Core" to avoid confusing it with Entity Framework 5 and 6.

^

.NET Framework is a Windows-only version of .NET for building any type of app that runs on Windows. It means the .Net framework is built for Windows machines only.

.NET Core is a free, cross-platform, open-source developer platform for building many different types of applications. The first version .Net Core 1.0 was released in June 2016 and the last version of .Net Core is 3.1 which was released in Dec 2019.

.NET Core is more qualified for cross-platform needs. .NET Core applications work on Windows, Linux, and macOS. You may choose .NET Core if you are planning to follow Microservice architecture.

Detailed Article on various links- https://docs.microsoft.com/en-us/dotnet/standard/choosing-core-framework-server
https://www.sharepointcafe.net/2021/02/dot-net-core-vs-dot-net-framework.html
https://stackify.com/net-core-vs-net-framework/

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM