问题描述
我如何将 .NET 更改为 .NET Framework 4.7.2 我真的很挣扎,因为 2 天了。 我正在做一个 WinFormApp,只能使用 .NET 5 或 .NET Core 3.1,但我需要 .NET Framework 4.7.2 用于另一个框架。 已经通过 [Microsoft] 安装了它,但它没有出现在那里可供选择。
解决方法
您不需要“重新启动项目”即可面向 .NET Framework。您只需要在 csproj 文件中使用适当的 TargetFramework 元素。
以下是面向 .NET Framework 4.7.2 的 Windows 窗体应用程序示例:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>net472</TargetFramework>
<UseWindowsForms>true</UseWindowsForms>
</PropertyGroup>
</Project>
如果您创建了 .NET Core 3.1 或 .NET 5 项目,您只需编辑 .csproj 文件以指定 .NET Framework 作为目标框架 - 无需从头开始。
,好吧,由于您的主要应用程序是 .NET Core,它在核心 CLR 上运行。它不能更改为非核心 CLR 项目。如果无法实现所需的目标,则需要重新启动项目。
如果您出于某种原因还需要 .NET Core 应用程序,我建议您使用 API 调用在两个应用程序之间进行通信,或者使用另一种与项目本身无关的通信方法。