在哪里可以看到 Release 模式下的 TRACE 消息?
Where can I see the TRACE messages in Relase mode?
如this answer所述,我知道(不同于Debug),Trace可以在Debug和Release模式下使用。
(事实上,许多答案都说明了这一点,所以请不要将此问题标记为重复)
好吧,我现在正在 visual studio 中使用一个简单的应用程序进行尝试(是的,在属性中选择了跟踪选项),但我看不到跟踪消息的去向。当然不要再输出window了。
所以首先是最简单和切题的问题:在发布模式下,Trace 消息去哪里了?
此外,有没有办法将这些消息发送到 visual studio 之外?也许使用 this (DebugView)?
您可以在 App.config
文件中配置输出的位置。
下面的示例显示输出应该转到文件和 console
(如果您的应用程序是控制台应用程序)。
<system.diagnostics>
<trace autoflush="true" indentsize="4">
<listeners>
<add name="file" type="System.Diagnostics.TextWriterTraceListener" initializeData="c:\folder\trace.log" />
<add name="console" type="System.Diagnostics.ConsoleTraceListener" />
</listeners>
</trace>
</system.diagnostics>
做一个
Trace.WriteLine("message");
两个地方都会出现message
。
您可以在 MSDN 上找到更多详细信息。
如this answer所述,我知道(不同于Debug),Trace可以在Debug和Release模式下使用。
(事实上,许多答案都说明了这一点,所以请不要将此问题标记为重复)
好吧,我现在正在 visual studio 中使用一个简单的应用程序进行尝试(是的,在属性中选择了跟踪选项),但我看不到跟踪消息的去向。当然不要再输出window了。
所以首先是最简单和切题的问题:在发布模式下,Trace 消息去哪里了?
此外,有没有办法将这些消息发送到 visual studio 之外?也许使用 this (DebugView)?
您可以在 App.config
文件中配置输出的位置。
下面的示例显示输出应该转到文件和 console
(如果您的应用程序是控制台应用程序)。
<system.diagnostics>
<trace autoflush="true" indentsize="4">
<listeners>
<add name="file" type="System.Diagnostics.TextWriterTraceListener" initializeData="c:\folder\trace.log" />
<add name="console" type="System.Diagnostics.ConsoleTraceListener" />
</listeners>
</trace>
</system.diagnostics>
做一个
Trace.WriteLine("message");
两个地方都会出现message
。
您可以在 MSDN 上找到更多详细信息。