ASP.NET 5、.NET Core和ASP.NETCore 5之间有什么区别?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (105)

我对这些术语之间的区别感到困惑:

  • ASP.NET 5(现在更名为ASP.NET Core并发布为1.0,而不是5.0)
  • ASP.NET Core 5
  • .NET核心

任何人都可以简单解释它吗

提问于
用户回答回答于

ASP.NET 5(现在是ASP.NET Core 1.0)

下一代ASP.NET为Web和云场景提供了一个熟悉且现代的框架。它包括ASP.NET MVC,Web API,Web Pages和SignalR的下一个版本。它是一种高性能和模块化设计,并支持完全并行,使其无缝地从内部迁移到云。这些产品由ASP.NET团队与开源开发人员社区合作开发。我们一起致力于为Web开发创建最佳平台。

它已从ASP.NET 5重命名为ASP.Net Core 1.0。

.NET核心:

.NET Core是作为ASP.NET Core基础的小型优化运行时。它目前运行在Windows,Linux和Mac上。它是一种高性能和模块化的设计,并且支持在Web服务器上有多个应用程序,每个应用程序都有自己的.NET Core运行时副本,从而提供全面的并行体验,这将使采用新的应用程序变得容易。 .NET Core版本,而不会影响其他应用程序,这使得.NET Core体系结构从当前的经典.NET 4.6向前迈进了一大步。这些产品由.NET团队积极开发,并与开源开发人员社区合作开发。我们一起致力于通过新功能和新场景来改进和扩展.NET平台。

.NET Core有两个主要组件。它包含一个与.NET Framework CLR相同的代码库构建的小型运行时。.NET Core运行时包含相同的GC和JIT(RyuJIT),但不包含应用程序域或代码访问安全性等功能。运行时通过Microsoft.CoreCLR包在NuGet上交付。

.NET Core还包含基类库。这些库在很大程度上与.NET Framework类库的代码相同,但是已经进行了考虑(删除依赖项),以使我们能够发布一组较小的库。这些库在NuGet.org上以System。* NuGet包的形式发货。

有关更多信息,请参阅.NET Core简介

用户回答回答于

ASP.NET 5是基于DNX(.NET执行环境)的新平台。DNX值班加载CLR。现在有两种DNX:用于完整.NET CLR(来自.NET Framework)和用于CoreCLR。CoreCLR是一款新的跨平台轻型CLR(在Win / Linux / Mac上运行)。

ASP.NET 5可以在CLR / CoreCLR上无缝工作,因为DNX将它从正在使用的运行时中抽象出来。

为旧的.NET构建的IL程序集仍然与新的CoreCLR和DNX一起使用。所以ASP.NET 5的功能就是一大堆nuget包。

严格地说,现在没有像“asp.net core 5”和“.net core”这样的东西(如CLR!= .NET)。有“在CoreCLR上运行的ASP.NET 5”。

最好将“ASP.NET 5”视为“.NET 5”。

扫码关注云+社区