Visual Studio 16.8刚刚禁用了WPF Core 3.1应用程序中的控制台?

wyyhbhjk  于 2023-05-18  发布在  其他
关注(0)|答案(2)|浏览(129)

不久前,我使用Visual Studio创建了一个带有WPF应用程序的.NET Core 3.1。然后,在项目属性中,我将“输出类型”更改为“控制台应用程序”,这样我就有了一个漂亮的控制台来打印东西。已经很长一段时间了。但是我刚刚将VS从16.7.6更新到16.8.1,现在应用程序不会打开控制台窗口,当我打开项目属性时,“输出类型”显示为“Windows应用程序”,当我再次将其更改为“控制台应用程序”时,下次我打开项目属性时,它再次显示为“Windows应用程序”(即使csproj文件中有一个OutputType为“Exe”,这意味着它是一个控制台应用程序)。
是我做错了什么,还是微软突然决定禁用WPF Core(3.1)应用程序的控制台窗口,即使他们让你至少在项目属性打开时将输出类型更改为“控制台应用程序”,而且他们没有告诉任何人(至少,我还没有找到这样的声明)?

4xy9mtcn

4xy9mtcn1#

这个问题应该只适用于.NET 5,但也许它也适用于新的Visual Studio版本的.NET Core 3.1。
在我的例子中,我将.NET Core 3.1项目转换为.NET 5。我不得不将“输出类型”更改为“Windows应用程序”。然后编辑csproj文件并在<OutputType>WinExe</OutputType>之后添加以下行:

<DisableWinExeOutputInference>true</DisableWinExeOutputInference>

请参阅此MS文档页面。
在你的.NET Core 3.1项目中尝试一下。

bfnvny8b

bfnvny8b2#

我在更新项目时遇到的另一个原因是解决方案文件。格式已更改,如果您的格式较旧,则不会运行该项目。
要修复它,只需创建一个新的项目,并使用它给你的解决方案文件并覆盖你的。更改名称和路径,以指向正确的.proj文件和您的好去。

相关问题