【问题标题】:What is the difference between a Windows Forms App and Windows Forms App (.NET Framework)Windows 窗体应用程序和 Windows 窗体应用程序 (.NET Framework) 有什么区别
【发布时间】:2020-12-15 10:32:12
【问题描述】:

在 Visual Studio 2019 中创建新项目时,有两个选项可用于创建 Windows 窗体应用程序。这些选项有什么区别?

【问题讨论】:

  • Introducing .NET 5: “.NET Core 3.0 之后的下一个版本将是 .NET 5”——也就是说,5 既不是 Framework,也不是 Core,只是 .NET
  • @Damien_The_Unbeliever 和 .NET 允许轻松生产 Winforms 应用程序?通过拖放?但是 .NET 会更好、更现代吗?
  • 顾名思义……这是一个“控件”“库”的项目。这将是您创建和存储“自定义控件”并在其他项目中通过 Using 声明简单地使用这些“自定义控件”的地方。
  • 我自己没有使用过 core 或 xamarin,而且这个 forest 的名称确实非常令人困惑。在有一个规范问题作为重复关闭之前,请考虑实际发布答案而不是投反对票。这个问题标题是许多(每个?)初学者都会搜索的内容。

标签: c# .net visual-studio winforms


【解决方案1】:

Windows Forms App(.NET Framework) 是使用 .NET Framework 制作桌面应用程序的类型。 Windows Forms App(.NET) 也是制作桌面应用程序的类型,但它使用 .NET Core(最新版本是 .NET Core 5.0) Windows 控件库项目模板用于创建自定义控件以在 Windows 窗体上使用,就像我们使用工具箱中的按钮一样 开发人员使用 . NET 框架来创建 Windows 桌面应用程序和基于服务器的应用程序。 NET Core 用于创建在 Windows、Linux 和 Mac 上运行的服务器应用程序。

【讨论】:

    【解决方案2】:

    最佳做法是选择“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 Core is the Future of .NET

    此外,.NET 5 是 .NET Core 和 .NET Framework 的继任者。从现在开始,只有 .NET:

    未来将只有一个 .NET,您将能够使用它来面向 Windows、Linux、macOS、iOS、Android、tvOS、watchOS 和 WebAssembly 等。

    来源:Introducing .NET 5

    【讨论】:

    • 这个答案提供了一些很好的信息,但它缺乏对问题的直接答案。也许可以改进一下。
    • 这应该被标记为答案。
    【解决方案3】:
    • 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 日,他们从名称中删除了“核心”一词。例如,以前的版本称为“.NET Core 3.0”,但最新版本现在称为“.NET 6”。

    【讨论】:

      【解决方案4】:

      根据我的考虑,这需要更清楚。

      如果您想运行以 .Net Framework 为目标的应用程序,您可以使用 Winform (.Net Framework),当您在系统上安装 windows 时会自动安装该应用程序。

      另一方面,如果您想使用 Just Winform 应用程序 开发桌面应用程序,这意味着您的目标是必须在您所在的系统上安装最新版本的 .net 核心将运行应用程序,否则,应用程序将无法按预期运行。并且您可能会被要求安装作为目标环境的最新版本的 .net 核心。

      您可以在项目的属性下开发应用程序时指定目标框架。

      【讨论】:

        【解决方案5】:

        第一个。 .NET Framework 是特定于 Windows 的。

        第二个(未提及).NET Core 是跨平台的。

        所以你可以选择你想要的。

        【讨论】:

        • 虽然 .NET Core 是跨平台的,但我很确定 Windows 窗体应用程序不是。
        猜你喜欢
        • 1970-01-01
        • 2014-01-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-09-08
        • 2014-07-29
        相关资源
        最近更新 更多