摘要:NET 是一个开源的跨平台开发框架,支持构建各种类型的应用程序,包括 Web 应用、桌面应用和移动应用。它由两个核心组件组成:
.NET 是一个开源的跨平台开发框架,支持构建各种类型的应用程序,包括 Web 应用、桌面应用和移动应用。它由两个核心组件组成:
• 运行时 (Runtime):负责运行已编译的应用程序。
• 软件开发工具包 (SDK):提供开发应用程序所需的工具和资源。
在开发过程中,开发者通常需要安装 .NET SDK,因为它包含了运行时以及开发所需的所有工具。而在部署阶段,目标环境只需要安装相应的运行时即可。
包含 .NET 运行时
包含 .NET 桌面运行时
包含 ASP.NET Core 运行时
.NET 运行时
是
否
否
.NET 桌面运行时
是
是
否
ASP.NET Core 运行时
否
否
是
.NET SDK
是
是
是
定义与用途.NET SDK 是一个软件开发工具包,提供了开发 .NET 应用程序所需的所有工具和资源。它主要用于开发环境,帮助开发者编写、编译、测试和调试代码。
主要组件• 编译器:将源代码编译为中间语言 (IL),并进一步转换为机器码。
• 库和框架:提供用于构建应用的库和框架,例如 ASP.NET Core。
• 命令行工具:dotnet命令行工具支持构建、运行、测试和发布应用。
• 项目模板:内置多种项目模板,例如 Web 应用、API、控制台应用等。
• 开发工具:包含诊断工具和性能分析工具,助力开发者优化应用。
使用场景• 开发阶段:用于编写代码、运行单元测试和调试应用程序。
• 跨平台支持:支持在 Windows、macOS 和 Linux 上开发 .NET 应用。
ASP.NET Core 运行时ASP.NET Core 运行时使用户能够运行现有的 Web/服务器应用程序。它适用于基于 Web 的应用开发。
• 包含运行 ASP.NET Core 应用程序所需的运行环境。
• 如果在装有 IIS 的计算机上安装,则还会添加 ASP.NET Core IIS 模块。
ASP.NET Core Hosting Bundle这是一个安装包,包含以下内容:
1. .NET Core 运行时:提供运行 ASP.NET Core 应用程序所需的运行环境。
2. .NET Core 库:提供应用程序运行所需的核心库。
3. ASP.NET Core 模块:这是一个 IIS 模块,用于将 HTTP 请求代理到 Kestrel 服务器。
.NET 桌面运行时.NET 桌面运行时使用户能够运行现有 Windows 桌面应用程序,例如 WPF 或 WinForms 应用。
• 包含 .NET 运行时,因此无需单独安装。
• 适用于桌面应用开发。
.NET 运行时.NET 运行时仅包含运行控制台应用所需的组件。
• 适用于简单的控制台应用开发。
• 通常与其他运行时(如 ASP.NET Core 运行时或 .NET 桌面运行时)结合使用。
特性
.NET SDK
.NET Runtime
包含内容运行时、编译器、工具、库、模板
仅包括运行时和核心库
使用场景开发和构建应用程序
运行应用程序(无需开发)
安装目的开发、构建、调试和发布
仅运行已构建的应用程序
适用人群开发者
最终用户或部署环境
是否包含其他运行时是
否
开发阶段1. 安装 .NET SDK。
2. 使用以下命令创建一个新项目:
dotnet new webapp -o MyWebAppcd MyWebApp
dotnet run部署阶段
1. 在目标环境中安装相应的运行时(如 ASP.NET Core 运行时)。
2. 如果使用 IIS 部署,安装 ASP.NET Core Hosting Bundle。
3. 将应用程序文件复制到目标服务器并启动。
来源:opendotnet