.NET 实现

.NET 应用是针对一个或多个 .NET 实现开发的。 .NET 实现包括 .NET Framework、.NET 5(和 .NET Core)以及 Mono。

.NET 的每个实现都具有以下组件:

  • 一个或多个运行时,例如 .NET Framework CLR 和 .NET 8 CLR。
  • 一个类库,例如 .NET Framework 基类库和 .NET 8 基类库。
  • (可选)一个或多个应用程序框架,例如 ASP.NETWindows FormsWindows Presentation Foundation (WPF) 都包括在 .NET Framework 和 .NET 5+ 中。
  • 可包含开发工具。 某些开发工具在多个实现之间共享。

Microsoft 支持以下四种 .NET 实现:

  • .NET 6 及更高版本
  • .NET Framework
  • Mono
  • UWP

.NET(以前称为 .NET Core)目前是主要实现。 .NET (8) 基于单个基本代码进行构建,该代码支持多个平台和许多工作负载,例如 Windows 桌面应用和跨平台控制台应用、云服务和网站。 某些工作负载(例如 .NET WebAssembly 生成工具)作为可选安装提供。

.NET 5 及更高版本

.NET(以前称为 .NET Core)是 .NET 的跨平台实现,专用于大规模处理服务器和云工作负载。 它还支持其他工作负载,包括桌面应用。 可在 Windows、macOS 和 Linux 上运行。 它可实现 .NET Standard,因此面向 .NET Standard 的代码都可在 .NET 上运行。 ASP.NET CoreWindows 窗体Windows Presentation Foundation (WPF) 都在 .NET 上运行。

.NET 8 是此 .NET 实现的最新版本。

有关更多信息,请参见以下资源:

.NET Framework

.Net Framework 是自 2002 年起就已存在的原始 .NET 实现。 4\.5 版以及更高版本实现 .NET Standard,因此面向 .NET Standard 的代码都可在这些版本的 .NET Framework 上运行。 它还包含一些特定于 Windows 的 API,如通过 Windows 窗体和 WPF 进行 Windows 桌面开发的 API。 .NET Framework 非常适合用于生成 Windows 桌面应用程序。

有关详细信息,请参阅 .NET Framework 指南

Mono

Mono 是主要在需要小型运行时使用的 .NET 实现。 它是在 Android、macOS、iOS、tvOS 和 watchOS 上驱动 Xamarin 应用程序的运行时,且主要针对小内存占用。 Mono 还支持使用 Unity 引擎生成的游戏。

它支持所有当前已发布的 .NET Standard 版本。

以前,Mono 实现更大的 .NET Framework API 并模拟一些 Unix 上最常用的功能。 有时使用它运行依赖 Unix 上的这些功能的 .NET 应用程序。

Mono 通常与实时编译器一起使用,但它也提供在 iOS 之类的平台使用的完整静态编译器(预先编译)。

有关详细信息,请参阅 Mono 文档

通用 Windows 平台 (UWP)

UWP 是用于为物联网 (IoT) 生成新式触控 Windows 应用程序和软件的 .NET 实现。 它旨在统一可能想要以其为目标的不同类型的设备,包括电脑、平板电脑、电话,甚至 Xbox。 UWP 提供许多服务,如集中式应用商店、执行环境 (AppContainer) 和一组 Windows API(用于代替 Win32 (WinRT))。 应用可采用 C++、C#、Visual Basic 和 JavaScript 编写。

有关详细信息,请参阅通用 Windows 平台简介