将跟踪点消息记录到文本文件中

时间:2016-06-17 08:26:56

标签: c# visual-studio

我在C#项目中添加了一个条件断点以及一个将消息写入控制台的“Action”。基本上,当您选中“操作”时,只会向您提供“将消息记录到输出窗口”的选项(这是VS 2015)。

如果我还要将该消息记录到文本文件中该怎么办?我一直在阅读有关跟踪侦听器的内容,但无法弄清楚如何将其连接到我的跟踪点。

1 个答案:

答案 0 :(得分:0)

跟踪点只能在调试时使用 - 因为它们由Visual Studio IDE调试器跟踪。我实际上试图设置一个监听器来将跟踪写出到日志文件,但看起来跟踪点不支持此功能。但是,它适用于Trace class

因此,看起来你在调试时会遇到输出窗口。在调试时,您始终可以将输出窗口的内容复制并粘贴到文件中。如果您打算将其用于发布代码,那么您应该使用自定义日志记录或Trace class

默认情况下,trace类会写入输出窗口。但是,可以修改默认侦听器以将Trace.WriteLine语句也记录到日志文件中。例如:

using System.Diagnostics;

// Set up the log file to be the folder where the program is run from, with the name Trace.log.
DefaultTraceListener DefListener = (DefaultTraceListener)Trace.Listeners[0];
DefListener.LogFileName = AppDomain.CurrentDomain.BaseDirectory + "Trace.log";
// Write out the value of Count within the loop to the log file.
for (int Loop = 0; Loop < 5; Loop++)
{
   Count++;
   Trace.WriteLine($"Count = {Count}");
}
DefListener.Flush();

然后,日志文件的内容将包含:

Count = 1
Count = 2
Count = 3
Count = 4
Count = 5

上述代码适用于发布和调试版本。