.NET Core与ASP.NET Core

.NET Core vs ASP.NET Core

.NET核心和ASP.NET核心到底有什么区别?

它们是相互排斥的吗?我听说ASP.NET核心是建立在.NET核心之上的,但也可以建立在完整的.NET框架之上。

那么,ASP.NET的核心到底是什么?


.NET核心是运行时。它可以执行为它构建的应用程序。

ASP.NET核心是构成用于构建Web应用程序框架的库的集合。ASP.NET核心库既可用于.NET核心库,也可用于"完整.NET框架"(多年来随Windows提供)。

令人困惑的是,使用ASP.NET核心库和工具的应用程序通常被称为"ASP.NET核心应用程序",理论上,这并不能说明它是为.NET核心还是.NET框架构建的。因此,"ASP.NET核心应用程序"也是一个".NET核心应用程序"或".NET框架应用程序"。

这张图片显示了相关技术的关系(摘自本博客帖子).NET Web Application Technologies

在这里,您可以看到ASP.NET核心构建在.NET框架和.NET核心之上,而"ASP.NET"(现在通常称为"经典ASP.NET")仅是.NET框架。


ASP.NET核心使用.NET核心-所有依赖项都是独立的,可以使用大多数nuget包,不能使用特定于Windows的包,可以在Windows、Linux、Mac上执行

使用.NET Framework的ASP.NET核心-大多数依赖项是独立的,仅在Windows上执行,将可以访问特定于Windows的Nuget包,需要在计算机上安装的.NET Framework版本


ASP.NET核心是.NET核心支持的工作负载之一https://docs.microsoft.com/en-us/dotnet/articles/core/工作负载

0


.NET核心是一个免费的开放源码管理计算机软件框架,适用于Windows、Linux和MacOS操作系统。

ASP.NET核心可以以.NET核心或.NET框架为目标。面向.NET框架的ASP.NET核心应用程序不是跨平台的,它们只在Windows上运行。通常,ASP.NET核心由.NET标准库组成。使用.NET标准2.0编写的库运行在任何实现.NET标准2.0的.NET平台上。


最近的信息。.NET框架在它的最后一个版本上。?4.8以后就没有了。微软将继续使用.NET核心。从现在起,您应该在项目中选择.NET核心。