No livro C#12 In a Nutshell, diz:
Ao executar aplicativos WPF ou Windows Forms no Visual Studio, a saída do Console é redirecionada automaticamente para a janela de saída do Visual Studio (no modo de depuração)
No entanto, tentei isso no código por trás:
using System.Diagnostics;
using System.Windows;
namespace WPFHelloWorld
{
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void Button_Click(object sender, RoutedEventArgs e)
{
Debug.WriteLine("Hello rr Debug");
Console.WriteLine("Hello rr");
}
}
}
E eu só vejo a saída de Debug.WriteLine
(então o código é alcançado).
Verifiquei a Output
aba e a Immediate Window
aba.
Não vejo o "Hello rr" em nenhum deles. Vejo "Hello rr Debug" na Output
aba.
Por que isso não está funcionando como o livro diz que deveria?
Isso é um bug do Visual Studio? Sei que a boa prática é usar Debug.WriteLine("Hello rr Debug");
em aplicativos WPF, já que não há Console. Minha pergunta é por que a saída do Console não é redirecionada quando diz que deveria.
Coisas que já fiz:
- Certifiquei-me de que estava executando no Modo de Depuração.
- Reiniciei meu computador.
- Reinstalei o Visual Studio.
- Eu reinstalei meu .NET sdk
- Eu tentei dotnet 8.0.401 e 9.0.101
- Verifiquei o Windows Update.