调查:哪些 C# (.NET) 框架真正用于生产环境
.NET 生态系统持续活跃发展,随之而来的是框架和库的数量不断增加。但哪些框架在真实项目中真正受到青睐,而不仅仅用于个人项目和教程?我们对来自商业开发领域的专业 C# 开发者进行了一项调查,以了解当前的实际情况。
超过 800 名受访者参与了此次调查——从初级开发者到技术主管。以下是我们的调查结果。
- ASP.NET Core (MVC + Web API) — 绝对领先者。超过 76% 的受访者在生产环境中使用它。这并不奇怪:跨平台、高性能以及来自 Microsoft 的广泛支持使其成为 C# Web 开发的标准。
- Blazor (Server + WebAssembly) — 以 23% 的结果位居第二。对 Blazor 的兴趣正在增长,尤其是在团队希望用同一种语言编写前端和后端的场景中。然而,生产项目数量仍比预期的要少——许多人指出了 WASM 中程序集大小的问题。
- WPF (Windows Presentation Foundation) — 在 18% 的生产项目中使用。主要是企业桌面应用程序、遗留系统和内部工具。WPF 仍然是仅限 Windows 解决方案的可靠选择。
- MAUI (.NET Multi-platform App UI) — 只有 7% 的受访者将其投入生产环境。尽管承诺跨平台,但开发者抱怨该框架不成熟、组件缺乏以及在 Android 上的性能问题。
- gRPC 服务 — 11% 的受访者使用 gRPC 进行微服务架构。该框架在高负载系统以及在与 Go/Python 服务交互时越来越受欢迎。
- Entity Framework Core — 虽然这是一个 ORM 而非框架,但它可以被视为 .NET 技术栈中不可或缺的一部分。89% 的受访者在生产项目中使用 EF Core。
- Xamarin.Forms / Xamarin.Native — 4% 的受访者仍在维护基于 Xamarin 的遗留项目,但几乎没有新的开发。
有趣的是,调查中还提到了 NancyFX、ServiceStack 和 Orleans (Microsoft Orleans) —— 这些是利基框架,使用率不到 2% 的参与者,但它们的社区仍然活跃。
另一个重要结论:许多开发者会组合使用多个框架。2025 年典型的生产项目技术栈如下:ASP.NET Core Web API + 用于管理后台的 Blazor + 用于桌面客户端的 WPF + 用于服务间通信的 gRPC。
因此,如果您刚开始学习 C# 或计划转向 .NET,首选应该是 ASP.NET Core。Blazor 和 MAUI 是有前途的技术,但它们大规模投入生产环境的时机尚未成熟。而 WPF 对于 Windows 开发者来说则是可靠的经典选择。
我们将继续关注趋势并在 pythonlib.ru 上发布最新数据。您使用哪个 .NET 框架?欢迎在评论区分享!