我找到了一篇很好的最近文章(
链接),它非常简短但很好地介绍了.NET Standard、.NET Core和.NET Framework以及它们之间的关系。我强烈推荐阅读该文章。不幸的是,我没有时间去适应并在这里发布它。
根据这个话题的
官方条目,以下是我认为的一些关键点:
.NET Core本质上是.NET Framework的一个分支,其实现也针对因素进行了优化。
我们认为,.NET Core不特定于.NET Native或ASP.NET 5——BCL和运行时是通用的,并且设计成可模块化的。因此,它构成了所有未来.NET垂直领域的基础。
因此,.NET Native和ASP.NET 5只是新框架配置的测试“对象”,部分原因是它们非常不同。
如图所示,它们甚至需要单独的低级别,但BCL的主要部分仍然是共同的。
即,顶部的品红色矩形将随着新的应用程序模型大量添加,但基础将保持共同。
NuGet部署:
与.NET Framework相比,.NET Core平台将作为一组NuGet软件包提供。我们选择NuGet是因为大多数库生态系统已经在这里了。
与当前框架的关系:
对于Visual Studio 2015,我们的目标是确保.NET Core是.NET Framework的纯子集。换句话说,不会有任何功能差距。 Visual Studio 2015发布后,我们的期望是.NET Core的版本将比.NET Framework快。这意味着会有一些时间点,某个特定功能仅可在基于.NET Core的平台上使用。
总结:
.NET Core平台是一个面向开源开发和NuGet敏捷交付优化的全新.NET堆栈。我们正在与Mono社区合作,使它在Windows、Linux和Mac上变得更好,并且Microsoft将在这三个平台上支持它。
我们保留了.NET Framework为企业级开发带来的价值观。我们将提供代表一组NuGet软件包的.NET Core分发,我们测试并一起支持。Visual Studio仍然是您的开发一站式服务。消费分发中的NuGet软件包不需要互联网连接。
基本上,这可以被视为具有更改的分发模型的.NET 4.6版本,同时也正在成为开源过程中的一部分。