C# WPF 应用程序 .NET Framework 4.8 与 .NET Core 3.1 和 .NET 5.0 的区别

9

我对WPF应用程序使用哪个版本感到困惑。

从技术上讲,.NET Framework会是最好的选择,原因如下:

  • WPF是为此平台而设计的
  • 有大量的插件可用
  • WPF本来就是为Windows设计的,因此跨平台支持对此无用

但我的逻辑可能有误,所以我想要确定。我主要对.NET 5.0感到困惑,因为我几乎肯定很多NuGet不支持.NET Core,所以您可能会选择.NET Framework以确保安全性。


1
.NET 5是最新版本,您应该选择.NET 5.0。除了安全更新之外,Net Framework没有未来。.NET 5是Net Core的下一个版本,微软决定从名称中删除“Core”。 - OlegI
2个回答

8

.Net Framework 4.x

除了修复问题,不会再进行更新。它现在已经是一个死胡同。选择这个版本可以带来稳定性和与许多库的兼容性,但会阻碍您获得新功能。

.Net 6.0(.net core 6的新名称)

今年发布的.NET努力的事实上是继续。它将加入以前在.NET Framework中可用的内容,并使其在.NET Core世界中保持活跃。虽然它起初是框架的多平台重新实现,但现在也成为Windows的终极dot net。

我认为这将获得最多的关注。

.Net 5.0

曾经是提供统一的候选人,最终在6.0中实现,但由于大流行病的原因而无法在5.0时间表内完成。

.Net 3.x

在功能方面不完整,无法与.NET Framework中的所有内容竞争。

如果必须选择,我会选择5.0或6.0的发布候选人,具体取决于产品预计何时发布。


1
在创建新应用程序时,大多数情况下应使用最新版本的.NET(目前是.NET 5)。.NET Framework具有默认安装在现代Windows中的优势,但缺乏新功能和改进。此外,.NET Framework模板采用传统格式,因此如果您以后需要新功能,则必须转换您的项目。另一方面,如果您从.NET模板开始,可以稍后添加.NET Framework支持而无需进行转换。 .NET Core 3.1是LTS分支,如果您的应用程序必须在几年内无需更改地工作,则它非常相关。
每个主要的.NET版本都包括主要性能改进,因此即使您不需要新功能,使用最新版本也是合理的。
现在大多数NuGet包都支持.NET Standard 2.0,因此它们与所有列出的运行时兼容。仅支持.NET Framework的软件包可能已被放弃,不应在新应用程序中使用。一些软件包甚至已经放弃了对.NET Standard的支持,而是仅针对最新的.NET(例如即将推出的Entity Framework Core 6)。随着时间的推移,越来越多的软件包将会跟随这种趋势。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接