我的代码中有以下行:
System.Diagnostics.Debug.WriteLine("Title:" + title + "title[top]: " + title[top] + "title[sub]: " + title[sub]);
当我调试时,我看到它会转到这一行,但当我在Visual Studio 2010中查看输出窗口时,即使它显示“Debug”并且我使用“debug> run”运行,我也看不到任何内容。为什么呢?
答案 0 :(得分:18)
检查以下项目 -
DEBUG
模式Debug
选项 -
Debug.AutoFlush = true
Point #5的参考(阅读评论,它适用于那个人)
答案 1 :(得分:13)
对我来说,这解决了这个问题:
System.Diagnostics.Trace.WriteLine("whatever");
(使用Trace
代替Debug
)
答案 2 :(得分:7)
在app.config文件中,确保跟踪侦听器中没有<clear/>
元素。
您将有效地清除跟踪侦听器列表,包括用于Debug语句的默认跟踪侦听器。
以下是app.config文件中的内容:
<system.diagnostics>
<trace>
<listeners>
<!-- This next line is the troublemaker. If it is there delete it-->
<clear/>
</listeners>
</trace>
</system.diagnostics>
答案 3 :(得分:3)
对我来说,我需要这样做才能解决问题:
1. Open the project's property page
2. Under Build tab, check "Define DEBUG constant" and "Define Trace constant"
瞧!
答案 4 :(得分:0)
我有同样的问题。使用Trace.WriteLine并检查“定义DEBUG常量”对我不起作用。
我注意到在“即时”窗口而不是“输出”窗口中找到了输出消息。
然后我取消选中工具中的“将所有输出窗口文本重定向到立即窗口”选项,并解决了我的问题。
答案 5 :(得分:0)
使用“ System.Diagnostics.Debug.WriteLine”在即时窗口中输出:-O