Windows Form App 和 Windows Form App (.Net Framework) 有啥不同?

Posted

技术标签:

【中文标题】Windows Form App 和 Windows Form App (.Net Framework) 有啥不同?【英文标题】:What is the different between Windows Form App and Windows Form App (.Net Framework)?Windows Form App 和 Windows Form App (.Net Framework) 有什么不同? 【发布时间】:2021-08-17 05:12:02 【问题描述】:

我正在使用 VS2019 并想创建一个 WinForm 应用程序。 Windows Form App 和 Windows Form App (.Net Framework) 有什么区别以及这两个选项中的哪一个 我应该选择吗?

【问题讨论】:

我敢打赌第二个是使用 .NET core 作为驱动程序。检查项目的目标框架是否清晰,因为每个项目类型的简要描述中都缺少它。 【参考方案1】:

当您创建一个新项目时,您会看到一个 (.Net Framework),这意味着它只能在 Windows 操作系统下运行,并且只能为 Windows 创建应用程序。我认为另一个默认模板是针对 .Net Core 的,它是在不同操作系统中运行的跨平台。

【讨论】:

WinForm 无法在其他操作系统上运行,即使使用 .NET Core,它仍然依赖于仅限 Windows 的 API。 @Martheen 在那种情况下,为什么他们要为没有意义的模板创建单独的模板? 因此人们可以迁移/创建与现代库和仅在 .NET Core 上可用的新功能交互的 WinForm 应用程序 @Martheen 这就是我发表评论后的想法,好吧,现在更有意义了。谢谢【参考方案2】:

这是关于 .NET 和 .NET Framework 的不同版本,您可以决定哪一个适合您要构建的内容:

开发人员使用 .NET Framework 来创建 Windows 桌面应用程序和基于服务器的应用程序。这包括 ASP.NET Web 应用程序。 .NET 用于创建可以在 Windows、Linux 和 Mac 上运行的应用程序。它不支持在 Windows 以外的平台上创建 Windows 桌面应用程序。开发人员可以在两种运行时中使用 VB.NET、C# 和 F# 编写应用程序和库。

.NET 有什么 .NET Framework 没有的? .NET 将获得新功能和运行时改进。它具有更好的性能,并且能够在同一台机器上并行部署不同版本的 .NET,创建自包含的应用程序,并且完全独立于您运行的环境等等

.NET Framework 有什么 .NET 没有的?它有一些不会迁移到 .NET 的旧 API。以及如何为您的新应用程序选择 .NET 为您的应用程序选择仅处于维护模式并且所有开发已完成您不想触摸该代码将它们留在 .NET Framework 和现有的代码是完全安全的以 .NET Framework 为目标但正在积极开发中的应用程序,如果将它们迁移到 .NET 或保留在 Framework 上,您可以拨打电话,您可以评估收益和移植成本,并做出最适合您的应用程序的决定

如果您想使用最新的语言功能和运行时改进,您应该选择 dotnet core

你也可以看看下面的链接:

.NET Core vs .NET Framework .NET Core and .NET Framework - what to choose? | Desktop and .NET Core 101

【讨论】:

以上是关于Windows Form App 和 Windows Form App (.Net Framework) 有啥不同?的主要内容,如果未能解决你的问题,请参考以下文章

将c#console app转换为c#windows form app

对于Gtk #Windows,是否有Form.Showdialog等价物?

如何从子组件中获取父表单的字段? [复制]

如何监听来自第 3 方 DLL 的表单的“Form.Shown”和“Window.Closing”?

window10怎么禁止更新

初识windows程序