在非调试模式下(.NET 5)在输出 window 中显示一条消息

Display a message in the output window when in non-debug mode (.NET 5)

在编写代码(图形应用程序 WPF)时,经常需要检查对象的值并将其显示在控制台上。请注意,我们谈论的是没有调试的模式 (CTRL + F5)。在调试模式下,有很多工具可以做到这一点,包括Debug.WriteLine() 或Trace.WriteLine()。但是并不是每次都需要调试,更多的时候,在写的过程中,需要运行应用程序不调试,只是检查一些东西,然后在控制台显示。

使用 .NET Framework 4.8,我能够 select 一个“控制台应用程序”(属性 - 应用程序 - 控制台应用程序)并使用旧的 [=19= 享受控制台的任何输出].但是,我切换到 .NET 5,令我惊讶的是我发现我无法 select “控制台应用程序”并显示我感兴趣的信息。此外,VS2019 输出中不显示消息 window 在非调试模式下(定义了调试常量)。

是的,我知道所有这些可能性都存在于调试模式 (F5) 中,但是,同样,我并不总是希望 运行 它来检查对象的状态。使用 .NET 5(到输出 window 或控制台)时,在非调试模式下 (CTRL + F5) 在屏幕上显示技术信息的方法有哪些?为此目的是否有可能的扩展?谢谢。

将输出类型设置为“控制台应用程序”后,您还需要将其添加到项目(.csproj)。

<DisableWinExeOutputInference>true</DisableWinExeOutputInference>

详情请参考OutputType set to WinExe for WPF and WinForms apps