为什么Trace.WriteLine(“Test”)在定位.net 4.0时不出现,但在3.5时出现

时间:2010-05-27 08:31:25

标签: .net-4.0

我刚刚注意到,当我从控制台应用程序调用以下代码时

for (int i = 0; i < 10; i++)
{
  Trace.WriteLine("Logging");
  Debug.WriteLine("Logging Debug");
}

如果我定位.net 4.0,虽然我正在捕获所有输出,但调试视图应用中不会显示任何消息。

如果我更改为目标3.5,则显示正常。

有什么改变,我该如何解决?

3 个答案:

答案 0 :(得分:4)

这实际上是设计的。 来自Microsoft Connect

  

CLR有一个新的调试   CLR本机的架构   甚至在调试应用程序时   管理只附加,因此   MS-SysInternals DebugView不会   工作

答案 1 :(得分:0)

你是在同一台机器上做这个吗?

可能是调试查看器(假设来自Sysinternals的DbgView)未连接。检查调试查看器的标题,查看您所连接的计算机的名称。

答案 2 :(得分:0)

这解决了我的问题:

Trace.Autoflush = true;