WPF开发--使用.NET Framework和.NET 5/6/7/8的区别

admin 2025-12-15 15:33:13

前言

如果做桌面开发(不考虑C++),只针对Windows平台,并且要使用多窗口,考虑到系统的兼容性的前提下,最优的方式还是使用WPF。

WPF开发可以选择两种库

.NET Framework

.NET 6/7/8

那么怎样选择呢?

SDK下载地址:https://dotnet.microsoft.com/zh-cn/download/visual-studio-sdks

.NET体系对比?

一句话结论:现阶段还是用.NET Framework 以后.NET Core是趋势

第三方库大部分都有.NET Framework版本的,不一定有.NET Core版本的

.NET 生态有三个主要的高级别组件 - .NET Framework, .NET Core, 和 Xamarin。

.NET Framework

支持 Windows 和 Web 应用。

可以使用 Windows Forms、WPF、和 UWP 来构建Windows 应用程序

ASP.NET MVC 的 Web 应用。

.NET Core

是最新的开源跨平台框架,用于构建包括 Windows, Mac 和 Linux 操作系统在内的应用程序。

.NET Core 支持 Windows Forms、 WPF、UWP和 ASP.NET Core。

UWP用于构建 Windows10 目标Windows和移动应用程序。

ASP.NET Core用于构建基于浏览器的 Web 应用程序。

.Net 5/6/7/8

.NET Core的后续版本命名。

Xamarin

毋庸置疑,当你想通过 C# 来构建移动应用(IOS,Android 和 Windows Mobile),Xamarin 是你唯一的选择。

.NET Framework 的优点

如果你目前主要是维护和更新现有 .NET 应用程序,那么 .NET Framework 是你一个不错的选择。将现有 .NET 程序移植到 .NET Core 上可能还是需要一些工作。

.NET Framework 支持Win7。

这就是 .NET Framework 的现状。

当前版本的.NET Framework 4.8 应该是.NET Framework的最新版本。

将来不会再计划新版本的.NET Framework。

.NET Core 的优点

微软已经宣布了 .NET Core 3.0 ,这是一个有非常多改进的 .NET Core 版本,如果你想学习和使用里面的新特性,那么.NET Core 是值得尝试的。

.NET Core 3.0 目前支持 WPF 和 Windows Forms,.NET Core 3.0 同样也支持在 UWP, WPF 和 Windows Forms 之间进行混合开发。这将使得开发者能够更灵活地将 UWP 中一些更现代化的接口引入到 WPF 和 Windows Forms 中。

如果你正在构建新的应用程序,并且你的公司支持使用 .NET Core,那么 .NET Core 是一个不错的选择,总之 .NET Core 会越来越好的。

.NET Core 更适合跨平台的需求, .NET Core 的应用程序支持在 Windows, Linux, and macOS 运行。微软广受好评的开源代码编辑器 Visual Studio Code 支持 Linux 和 macOS,同时它也支持更加现代化的编辑需求,如 智能感知[IntelliSense] 和 调试[debugging],大多数其它第三方的编辑器,如 Sublime, Emacs, 和 VI 同样支持 .NET Core。

微服务架构同样在 .NET Core 中适用,它可以和不同平台的服务共同工作。包括通过 .NET Framework, Java, Ruby 等语言开发的。在容器化大行其道的今天,.NET Core 的模块化、轻量级以及它的灵活性使得它能很容易地部署到容器中,容器可以部署到任何平台,如 云上、Linux 和 Windows 上。 .NET Core 适用于 Docker 和 Azure Kubernetes 服务。

.NET 5/6/7/8

目前 .NET Framework 的版本为 4.8(后续应该不会在更新了),并且仍由 Microsoft 支持。

2014 年,Microsoft 开始编写 .NET Framework 的跨平台开源后续产品即.NET Core系列。

.NET Core系列:

.NET 5 是继 .NET Core 3.1 之后 .NET Core 的下一个主要版本。

出于以下两个原因,我们将此新版本命名为 .NET 5,而不是 .NET Core 4:

我们跳过了版本编号 4.x,以避免与 .NET Framework 4.x 混淆。

我们从名称中删除了“Core”,是为了强调这是 .NET 未来的主要实现。

与 .NET Core 或 .NET Framework 相比,.NET 5 会支持类型更多的应用和平台。

也就是说

以后都是.NET 5/6/7的天下了。

.NET Framework还是.NET 6/7/8

2024年10月18更新

如果必须支持Windows 7,使用.NET Framework是最佳选择。

如果可以升级目标用户的操作系统,那么在.NET 6上进行开发是一个更好的选择,因为它提供了更多的现代特性和性能优化。

.NET Core 在新版本的Visual Studio中在新建项目时候已经不能选择了,如果新项目建议用.NET 6。

.NET 6的最低系统要求是 Windows 10 或更新版本。

Win7支持情况

如果必须支持Windows 7,使用.NET Framework是最佳选择,那么版本怎么选择呢?

首先我们看看支持情况:

初始版本:Windows 7 最初发布时,支持的 .NET Framework 版本最高为 4.0。

Service Pack 1 (SP1):安装 Windows 7 Service Pack 1 后,系统可以支持更高版本的 .NET Framework,最高支持到 .NET Framework 4.8。

.NET Framework 4.8 于 2019 年 4 月 18 日 发布,这是 .NET Framework 的最后一个主要版本。

虽然 .NET Framework 4.8 仍然受到维护和支持,但它不会再推出包含新特性的版本。

结论

如果项目要支持Win7,建议使用 .NET Framework 4.8版本。

系统的预装情况

查看版本

查看.NET Framework版本

按下 Win + R 键,输入 regedit,然后按 Enter 键。

1

计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full

查看.NET版本

系统上所有已安装的 .NET SDK 和运行时版本

12

dotnet --list-sdksdotnet --list-runtimes

预装版本

Windows 7 初始版本自带 .NET Framework 3.5,包括 .NET Framework 2.0 和 3.0。

Windows 10 初始版本自带 .NET Framework 4.6。

通过 Windows 更新,系统可以升级到 .NET Framework 4.8(这是 .NET Framework 的最后一个版本)。

Windows 11 自带 .NET Framework 4.8。

都不预装 .NET Core/.NET 5/6/7/8