项目输出类型未更改为控制台应用程序,控制台 window 未显示在 WinForms 中

Project output type not changing to console application, Console window not showing in WinForms

我正在 .NET Core 项目上开发 Windows Forms,需要显示控制台 window 并使用 Console.WriteLine() 打印一些信息。 我通常在 winform 项目中通过 属性 通过 Project >> [my project name] Properties 将输出类型更改为“控制台应用程序”来执行此操作,但在我保存后它目前正在变回“Windows 应用程序”它并打开设置。

为什么会这样?我该如何解决这个问题?

我也试过从项目文件中删除 <UseWindowsForms>true</UseWindowsForms>,这使问题变得更糟。

有 2 个想法:

  1. Program.cs 的主要方法发生变化:删除与表单相关的代码行。按 Console.WriteLine("bar");
  2. 更改
  3. 您仍然将信息与 Windows 表单一起打印到控制台。 只需将 Console.WriteLine("foo"); 或其他内容放入 Program.cs 的主要方法即可。

我终于设法使用这段代码强制显示控制台 window,

public Form1()
{
    InitializeComponent();

    //Added this call
    AllocConsole();
}

[DllImport("kernel32.dll", SetLastError = true)]
[return: MarshalAs(UnmanagedType.Bool)]
static extern bool AllocConsole();