C#面试题更新 2026-08-05

请解释 .NET Core 是什么,并详细说明它与 .NET Framework 之间的主要差异。

技术原理C#.NET Core

考察说明

评估候选人对 .NET Core 的基本概念及其与 .NET Framework 差异的理解。

回答思路

  1. 【回答框架 1】.NET Core 是微软推出的跨平台、开源、模块化的开发框架,用于构建应用程序,它支持 Windows、Linux 和 macOS 等操作系统。它采用了与 .NET Framework 不同的设计理念,强调跨平台和灵活性。
  2. 【回答框架 2】.NET Core 与 .NET Framework 的主要区别在于跨平台支持、开源程度、部署方式和 API 兼容性。.NET Core 完全开源,支持跨平台,而 .NET Framework 仅支持 Windows 且不开源。.NET Core 支持自包含部署,应用程序可携带运行时,而 .NET Framework 依赖系统安装的运行时。.
  3. 【回答框架 3】在 API 方面,.NET Core 实现了 .NET Standard,提供了统一的 API,使得库可以在不同 .NET 实现间共享。.NET Framework 在 Windows 上提供了更广泛的 API,但未跨平台。.NET Core 在性能上通常优于 .NET Framework,特别是在服务器场景。
  4. 【回答框架 4】随着时间发展,微软推出了 .NET 5 及更高版本,统一了 .NET Core 和 .NET Framework,形成了 .NET 5+,但 .NET Framework 仍在维护,主要用于旧系统或依赖 Windows 特定功能的场景。
  5. 【关键点 1】.NET Core 是跨平台、开源的,.NET Framework 仅限 Windows。
  6. 【关键点 2】.NET Core 支持自包含部署,.NET Framework 需要安装。
  7. 【关键点 3】.NET Core 实现了 .NET Standard,.NET Framework 未实现。
  8. 【关键点 4】.NET 5+ 统一了 .NET Core 和 .NET Framework,但 .NET Framework 仍受支持。
  9. 【易错点 1】不要混淆 .NET Core 与 .NET Framework 的版本,.NET 5+ 是新的统一版本,但 .NET Framework 仍是独立产品。
  10. 【易错点 2】不要认为 .NET Core 完全取代了 .NET Framework,某些 Windows 特定技术仍依赖 .NET Framework。
  11. 【易错点 3】不要认为所有 NuGet 包都兼容 .NET Core,需检查目标框架。