最佳实践是选择“Windows Forms App”进行新开发。
Visual Studio允许开发人员基于.NET Framework或.NET Core创建项目。随着.NET 5的发布,两者都已被取代。开发人员仍然可以使用.NET Framework创建项目,这就是为什么有两种项目类型的原因。
.NET Framework比.NET Core旧,并且仅在Windows上运行。.NET Core是为跨平台而创建的,并且最初不支持Windows桌面应用程序。它们通过.NET Framework 4.8和.NET Core 3.1分别发布。
当.NET Core 3.0发布时,Microsoft开始建议使用.NET Core开发所有新应用程序,无论其类型如何。Microsoft还宣布,将不会再对.NET Framework进行重大更新:
随着2019年9月发布的.NET Core 3.0,我们认为所有新的.NET应用程序都应该基于.NET Core。从.NET Framework的主要应用程序类型得到支持,在我们没有迁移某些内容时,有一个推荐的现代替代品。所有.NET的未来投资都将投入.NET Core。
.NET Framework 4.8将是.NET Framework的最后一个重大版本。
此外,.NET 5 是 .NET Core 和 .NET Framework 的继任者,从现在开始,只有一个 .NET:
未来将只有一个 .NET,您可以使用它来面向 Windows、Linux、macOS、iOS、Android、tvOS、watchOS 和 WebAssembly 等目标。
来源:介绍 .NET 5。
Windows Forms App (.NET Framework)
是 .NET Framework 4.8 或更早版本。创建于 2002 年至 2019 年之间。 https://en.wikipedia.org/wiki/.NET_Framework_version_history
而
Windows Forms App
是 .NET Core 3.0 或更新版本。创建于 2016 年至 2023 年之间(预计) https://en.wikipedia.org/wiki/.NET
在 2020 年 11 月 10 日,他们从名称中删除了“Core”这个词。因此,以前的版本称为“.NET Core 3.0”,但最新版本现在称为“.NET 6”。
Windows Forms App(.NET Framework)是使用.NET Framework创建桌面应用程序的类型。 Windows Forms App(.NET)也是创建桌面应用程序的类型,但它使用.NET Core(最新版本是.NET Core 5.0)。 Windows控件库项目模板用于创建自定义控件以在Windows窗体上使用,就像我们从工具箱中使用按钮一样。 开发人员使用.NET Framework创建Windows桌面应用程序和基于服务器的应用程序。而.NET Core用于创建在Windows、Linux和Mac上运行的服务器应用程序。
根据我的考虑,这需要更加清晰明了。
如果你想运行针对 .Net Framework 的应用程序,可以使用 Winform (.Net Framework),因为在系统安装 Windows 时会自动安装 .Net Framework。
另一方面,如果你想仅使用 Winform 应用程序 进行桌面应用程序的开发,那么你就是在针对最新版本的 .net core 进行开发。你需要在将要运行该应用程序的系统上安装最新版本的 .net core,否则应用程序不会按预期运行,并且可能会要求你安装所针对的环境中最新版本的 .net core。
在项目属性下,你可以指定开发应用程序的目标框架。
Using
语句即可在其他项目中使用这些“自定义控件”。 - JohnG