c# - 需要帮助将 winform 迁移到 net 5
问题描述
我正在将一个 winform 应用程序从 net core 3.1 移植到 net 5 并收到以下错误。
严重性代码 描述 项目文件行抑制状态错误 NETSDK1136 使用 Windows 窗体或 WPF 或引用这样做的项目或包时,目标平台必须设置为 Windows(通常通过在 TargetFramework 属性中包含“-windows”)。PublicOutput.core C:\Program Files\dotnet\sdk\5.0.100\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.Sdk.DefaultItems.targets 369
这是 Microsofts.net.sdk.DefaultItems.targets 所指的部分。
<Target Name="_CheckForInvalidWindowsDesktopTargetingConfiguration"
BeforeTargets="_CheckForInvalidConfigurationAndPlatform"
Condition="'$(TargetFrameworkIdentifier)' == '.NETCoreApp' and $([MSBuild]::VersionGreaterThanOrEquals($(_TargetFrameworkVersionWithoutV), '5.0')) and ('$(UseWindowsForms)' == 'true' or '$(UseWPF)' == 'true')">
<NETSdkError Condition="'$(TargetPlatformIdentifier)' != 'Windows'"
ResourceName="WindowsDesktopTargetPlatformMustBeWindows" >
我不明白错误,错误发送给我的链接没有帮助
我已将目标框架设置为以下内容:
<TargetFramework>net5.0</TargetFramework>
<UseWindowsForms>true</UseWindowsForms>
任何帮助,将不胜感激
解决方案
错误很明显:
使用 Windows 窗体或 WPF 时,目标平台必须设置为 Windows(通常通过在 TargetFramework 属性中包含“ -windows ”),
所以更改<TargetFramework>net5.0</TargetFramework>
为文档<TargetFramework>net5.0-windows</TargetFramework>
中所写
推荐阅读
- javascript - 如何在平面列表中水平对齐元素反应原生?
- c++ - python中是否有相当于'pass'的C或C++?
- javascript - javascript 错误,无法将单元格添加到表格行
- navigation - 如何让我的网站正确加载内部链接
- git - 您不允许将代码推送到此项目的受保护分支。?
- python - 如何仅过滤那些包含给定标签列表中的任何值的行
- r - R:分类变量值的比例直方图(而不是每个值的许多直方图)
- java - 是否可以将对象的类转换为另一个类?
- python-3.x - 包括常见的属性装饰器
- javascript - 我想制作一个不和谐的机器人,以便它可以接收两部分命令。所以如果我说 -count 5,我的机器人会说 6