.NET Core

来自开放百科 - 灰狐
2019年5月14日 (二) 00:58Allen (讨论 | 贡献)的版本

跳转到: 导航, 搜索
Wikipedia-35x35.png 您可以在Wikipedia上了解到此条目的英文信息 .NET Core Thanks, Wikipedia.

.NET Core 是一个通用目的、模块化、跨平台的 .NET 开源实现。

.NET Core 是.NET Framework的新一代版本,具有跨平台 (WindowsOS XLinux) 能力的应用程序开发框架 (Application Framework),未来也将会支持 FreeBSD 与 Alpine 平台,也是微软在一开始发展时就开源的软件平台。

由于 .NET Core 的开发目标是跨平台的 .NET 平台,因此 .NET Core 会包含 .NET Framework 的类库,但与 .NET Framework 不同的是 .NET Core 采用包 (Packages) 的管理方式,应用程序只需要获取需要的组件即可,与 .NET Framework 大包式安装的作法截然不同,同时各包也有独立的版本线 (Version line),不再硬性要求应用程序跟随主线版本。

目录

新闻

版本

.NET Core Release Notes

指南

macOS

卸载 .NET Core

$ dotnet --list-sdks
2.0.0 [/usr/local/share/dotnet/sdk]
$ sudo rm -rf /usr/local/share/dotnet/sdk/2.0.0
$ dotnet --list-runtimes
Microsoft.AspNetCore.All 2.2.0 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All]
Microsoft.AspNetCore.App 2.2.0 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.NETCore.App 2.0.0 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
$ sudo rm -rf /usr/local/share/dotnet/shared/Microsoft.AspNetCore.All/2.2.0
$ sudo rm -rf /usr/local/share/dotnet/shared/Microsoft.AspNetCore.App/2.2.0
$ sudo rm -rf /usr/local/share/dotnet/shared/Microsoft.NETCore.App/2.2.0

核心项目

.NET Core Repos

Docker

区别

.NET Core 和 .NET Framework 的主要差异在于:

  • 应用模型 -- .NET Core 不支持所有 .NET Framework 应用模型,某种程度上是因为其中许多模型都是基于 Windows 技术,如 WPF(基于 DirectX 生成)。 但 .NET Core 和 .NET Framework 两者都支持控制台和 ASP.NET Core 应用模型。
  • API -- .NET Core 包含很多与 .NET Framework 相同,但数量较少的 API,并且具有不同的组成要素(程序集名称不同;关键用例中的类型形状不同)。 目前,这些差异通常都需要更改,以将源移植到 .NET Core。 .NET Core 实现 .NET Standard API,随着时间的推移,将包含更多 .NET Framework BCL API。
  • 子系统 -- .NET Core 实现 .NET Framework 中子系统的子级,目的是实现更简单的实现和编程模型。 例如,不支持代码访问安全性 (CAS),但支持反射。
  • 平台 -- .NET Framework 支持 Windows 和 Windows Server,而 NET Core 还支持 macOS 和 Linux。
  • 开放源码 -- .NET Core 属于开放源码,而 .NET Framework 的只读子集属于开放源码。

.NET Core 与 Mono 比较

Mono 是原始的跨平台和 开放源 .NET 实现,于 2004 年首次发布。 可以把它看作是 .NET Framework 的社区克隆。 Mono 项目团队依赖于 Microsoft 发布的开放 .NET Standard(尤其是 ECMA 335),以便实现兼容性。 .NET Core 和 Mono 的主要差异在于:

  • 应用模型 -- Mono 通过 Xamarin 产品支持 .NET Framework 应用模型(例如,Windows Forms)和其他应用模型(例如,Xamarin.iOS)的子集。 而 .NET Core 不支持这些内容。
  • API -- Mono 使用相同程序集名称和组成要素支持 .NET Framework API 的 大型子集。
  • 平台 -- Mono 支持很多平台和 CPU。
  • 开放源码 -- Mono 和 .NET Core 两者都使用 MIT 许可证,且都属于 .NET Foundation 项目。
  • 焦点 --最近几年,Mono 的主要焦点是移动平台,而 .NET Core 的焦点是云工作负荷。

迁移

用户

  • 网易游戏 网易的“绝代双骄”手游前端采用Unity,后端采用.net core进行开发,据说能降低30%的人员成本,提高20%的开发速度。

图集

链接

分享您的观点
个人工具
名字空间

变换
操作
导航
工具箱