为了理解.NET Core,它有助于理解.NET Framework。微软在21世纪初发布了.NET Framework。.NET Framework是一个仅限于Windows的开发框架,它在最底层提供了内存管理,安全性,异常处理和许多其他功能。.NET框架附带一大堆库,可执行从XML解析到HTTP请求的各种功能。它还支持几种语言,并将它们编译成相同的通用中间语言; 任何语言都可以使用任何其他语言构建的库。这些关键概念也出现在.NET Core中。
2016年,微软收购了Xamarin并发布了.NET Core 1.0。之前Xamarin已经移植了.NET框架的大部分内容来运行在基于Linux / Unix的操作系统上。一些代码可以在.NET Framework,Xamarin和新的.NET Core之间共享,但编译后的二进制文件不能。.NET Core的一部分努力是创建一个标准化的平台,允许所有.NET实现共享相同的库。
图1 .NET框架,.NET Core和Xamarin都共享一个称为.NET标准库的标准化平台
以前的Xamarin和.NET Framework之间是无法共享二进制文件的。随着.NET标准库和通用基础架构的推出,这两个框架现在成为统一的.NET生态系统的一部分。
什么是.NETCore?
在上图中,似乎.NET Core是另一个包含UWP(通用Windows平台)和ASP.NET Core的框架。为了使.NET Core成为现实,创建了.NET标准库和通用基础架构。