【问题标题】:What is (run on .NET Framework) while creating a .NET Core web development? [duplicate]创建 .NET Core Web 开发时(在 .NET Framework 上运行)是什么? [复制]
【发布时间】:2021-03-11 20:10:40
【问题描述】:

我正在创建一个 .NET Core 应用程序。为什么有“在 .NET Framework 上运行”选项(见下图)? .NET Core 不是已经在某种意义上包含了 .NET 框架吗?
.NET Core 是跨平台的,为什么我需要只支持 Windows 的 .NET 框架?

【问题讨论】:

  • 我对您的问题进行了编辑,但不清楚您在问什么。
  • 这不是“新”选项,而是旧选项(从 .NET Core 1.x 开始)。 github.com/aspnet/Announcements/issues/324 无论如何,对于 ASP.NET Core 3.x 及更高版本,您不会得到它。

标签: asp.net .net asp.net-core


【解决方案1】:

如果选中“在 .NET Framework 上运行”复选框,则生成的项目将创建一个在 .NET Framework 而非 .NET Core 上运行的 ASP.NET Core 2.1 应用程序。

值得一提的是,ASP.NET Core 2.1 是最后一个支持 .NET Framework 的版本。详情请看.NET Core and .NET 5 Support Policy

.NET Core 不包含 .NET Framework,它们是不同的运行时和框架,但有很多共同点

2002 年,Microsoft 发布了 .NET Framework,这是一个用于创建 Windows 应用程序的开发平台。目前 .NET Framework 的版本为 4.8,并且仍受 Microsoft 支持。

2014 年,Microsoft 开始编写 .NET Framework 的跨平台、开源继任者。这种 .NET 的新实现在版本 3.1 之前被命名为 .NET Core。 .NET Core 3.1 之后的下一个版本是 .NET 5.0。版本号 4 被跳过以避免混淆 .NET 和 .NET Framework 4.8 的实现。 “Core”这个名称被删除,以表明它现在是 .NET 的主要实现。

来源:https://docs.microsoft.com/en-us/dotnet/core/introduction#net-core-and-net-5

【讨论】:

  • 也就是说.NET Core应用如果被选中就不是跨平台应用了?它的能力会受到限制,对吧?
  • 是的,如果选中,应用程序将是 .NET Framework 应用程序并且仅限于 Windows。目标框架下拉框具有误导性。如果您有充分的理由不依赖 .NET Framework,那么 .NET Core 是您的最佳选择。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-12-20
  • 2016-11-08
  • 1970-01-01
  • 2021-01-21
  • 1970-01-01
  • 2019-10-04
  • 1970-01-01
相关资源
最近更新 更多