. net Core vs . ASP。网络核心

. net Core和ASP之间到底有什么区别?网络核心?

它们是相互排斥的吗?我听到ASP。NET Core构建在。NET Core之上,但它也可以构建在完整的。NET框架之上。

ASP到底是什么。网络核心?

150089 次浏览

ASP。NET Core是.NET Core支持的工作负载之一。

。NET核心指南:

就其本身而言,. net Core包括一个单一的应用程序模型——控制台应用程序——这对于工具、本地服务和基于文本的游戏非常有用。在.NET Core之上构建了更多的应用程序模型来扩展它的功能,例如:

  • ASP。网络核心
  • Windows 10通用Windows平台(UWP)
  • Xamarin的。形式

更新2020:注意ASP。NET Core 3及更高版本现在依赖于。NET Core,不能再用于。NET Framework。下面的描述是针对ASP。NET Core 1.x-2.x;层分离仍然适用于ASP。NET Core 3.0,而ASP。在3.0+版本中,NET核心层不能再用于。NET Framework之上。

. net Core是一个运行时。它可以执行为它构建的应用程序。

< p > ASP。NET Core是一个库的集合,它形成了一个构建web应用程序的框架。 ASP。NET Core库可以在。NET Core和“完整的。NET框架”(已经随windows发布了很多年了)上使用

令人困惑的是,一个使用ASP库和工具的应用程序。NET Core通常被称为“ASP。这在理论上并没有说它是为。NET Core还是。NET Framework构建的。所以ASP。NET核心应用程序“是 a”。NET核心应用程序"或"。NET框架应用程序”。

这张图显示了所涉及的技术之间的关系(取自这篇博文) 。NET Web应用技术”</a> < / p >


<p>这里你可以看到ASP。NET Core是建立在。NET Framework和。NET Core之上的。NET”(现在通常被称为“经典ASP.NET”)只是。NET框架。</p></div>
                                                                            </div>
                                </div>
                            </div>
                        </div>
                                                <div class=

ASP。NET Core< em>using .NET Core -所有依赖项都是自包含的,可以使用大多数NuGet包,不能使用Windows特定的包,可以在Windows、Linux和Mac上执行。

ASP。NET Core using .NET Framework -大多数依赖项是自包含的,只在Windows上执行,可以访问特定于Windows的NuGet包,需要目标安装在机器上的. net框架版本。

. net框架已经发布了最后一个版本。4.8之后不会再有了。微软将继续使用。net Core。从现在开始,你应该在你的项目中使用。net Core。

官方更新():

. net 5是继。net Core 3.1之后的下一个主要版本。我们将这个新版本命名为。net 5而不是。net Core 4有两个原因:

  • 我们跳过了版本号4。.x以避免与. net Framework 4.x混淆。
  • 我们放弃了“核心”;. net 5比. net Core或. net Framework支持更多类型的应用和平台。

ASP。NET Core 5.0基于。NET 5,但保留了“Core”的名称。以避免与ASP混淆。Net MVC 5。同样,实体框架核心5.0保留了“核心”的名称;以避免与实体框架5和6混淆。

.NET Core是.NET Framework的下一个进化版本,允许微软技术托管在其他操作系统平台上,而不是Windows。

ASP。NET是web框架由微软提供用于构建:

  • 服务器端渲染的网页/网站
  • 用于spa的服务器端组件
  • MVC-fashion应用
  • web服务/web api /微服务

ASP。NET只能在Windows平台上运行。

由于. net Core的创建是为了提供在Linux/macOS之上运行微软技术的能力,这意味着ASP。NET Core是ASP的进化。NET方向的多平台支持。

结论:

ASP。NET Core运行在。NET Core和。NET 5.0上,在多个操作系统平台之上:Windows, Linux和amp;macOS。

ASP。净4。x (ASP.NET/ASP。NET MVC)只运行在。NET框架上,在Windows操作系统之上。

enter image description here