dotnet 构建不适用于 1 个 WPF 项目,但所有其他项目都可以

问题描述 投票:0回答:1

我对

dotnet-cli
有疑问。和
WPF
,当我右键单击解决方案并选择构建时,它每次都有效。没有问题,但是当我打开 Developer Powershell 并输入 dotnet build 时,它无法编译。它给了我错误:

名称“InitializeComponent”在当前上下文中不存在

我用谷歌搜索并看到了几个问题,据我了解,所有这些问题都不适用于 ms build。

其他信息 - .net Framework 4.7.2

为什么我使用 cli 而不是 ms build 会收到此错误?

wpf build .net-framework-version dotnet-cli .net-4.7.2
1个回答
0
投票

如果其他人遇到这种情况,这看起来是一个无法修复的 .NET Framework 问题: https://developercommunity.visualstudio.com/t/the-name-initializecomponent-does-not-exist-in-the-1/746339#T-N1213090

我们确定这是 WPF .NET Framework 中的错误,而不是 Visual Studio 中的错误。由于 .NET Framework 不再处于积极开发状态,因此仅修复影响极大的问题。例如,安全问题或影响大量开发人员的问题。鉴于这个反馈票已经开放一年了,收到的票数很少,我相信它不属于这个范围。

我建议您如果可能的话迁移到 WPF .NET Core,因为它正在积极开发中,您可能遇到的任何问题都更有可能得到解决。如果您确实遇到 WPF .NET Core 问题,可以在 https://github.com/dotnet/wpf/issues 报告它们,我们将考虑将它们用于 .NET 6.0。

我的团队将在某个时候(大部分)脱离框架,但与此同时,我的解决方法(出于我们的目的)是通过以下方式调用最新的 MsBuild.exe:

>"%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" -latest -requires Microsoft.Component.MSBuild -find MSBuild\**\Bin\MSBuild.exe MyFrameworkWPFProject.csproj

这利用 vswhere 实用程序来获取最新版本(就 VS 安装而言)。

© www.soinside.com 2019 - 2024. All rights reserved.