你好,
据微软的说明,.NET Core 和 .NET Framework 是子集 (Subset) 与超集 (Superset) 的关系,.NET Core 将会实作出部份的 .NET Framework 功能 (基本上是不含使用者介面的部份),
例如 JIT (.NET Core 采用 RyuJIT)、垃圾收集器 (GC) 以及型别 (包含基本型别以及泛型型别等)。
未来 .NET Framework 和 .NET Core 也将会是各自发展,但它们也会同时使用彼此的功能,例如 .NET Compiler Platform 与 RyuJIT 等技术。
.NET Core 与 ASP.NET Core 的关系其实一开始并不是主从关系,ASP.NET Core 的开发初期 (ASP.NET 5) .NET Core 还没有开始起跑,因此 ASP.NET Core 当时有自己的执行期与工具,一开始称为 Project K,后来改为 DNX (.NET Execution Environment),DNX 本身就具有可独立运作的执行能力,不需要依赖 .NET Core 执行,但是这样会变成 .NET Core 和 ASP.NET Core 双头马车的现象,在
.NET Core 逐渐成熟之后,微软也决定要将这两个各自独立发展的产品线整合在一起,DNX 也将因改用 .NET Core 执行期而终止开发,DNX 的功能将由 .NET Core 以及旗下的 .NET CLI 接替提供,整合后的版本将在 1.0 RC2 时释出。
具体的你可以参考如下链接:
http://www.cnblogs.com/xishuai/p/understanding-the-relationship-between-net-core-and-the-net-framework.html
https://zh.wikipedia.org/wiki/.NET_Core