如何在C#中添加(简单)跟踪?

时间:2020-03-05 18:43:11  来源:igfitidea点击:

我想对我正在编写的C应用程序进行一些跟踪。可悲的是,我永远无法真正记住它是如何工作的,并且希望时不时地检查一下具有参考质量的教程。它应包括:

  • 添加App.config / Web.config内容以注册TraceListeners
  • 如何在调用应用程序中进行设置

我们知道我们应该链接的超级教程吗?

编辑:格伦·斯拉文(Glenn Slaven)向我指出了正确的方向。将其添加到" <configuration />"内的App.config / Web.config中:

<system.diagnostics>
    <trace autoflush="true">
      <listeners>
        <add type="System.Diagnostics.TextWriterTraceListener" name="TextWriter"
             initializeData="trace.log" />
      </listeners>
    </trace>
</system.diagnostics>

这将添加一个" TextWriterTraceListener",它将捕获我们使用" Trace.WriteLine"等发送到的所有内容。

编辑:@DanEsparza指出我们应该使用Trace.TraceInformationTrace.TraceWarningTrace.TraceError而不是Trace.WriteLine,因为它们允许我们以与string.Format相同的方式格式化消息`。

提示:如果不添加任何侦听器,则仍可以通过SysInternals程序DebugView(Dbgview.exe)查看跟踪输出:http://technet.microsoft.com/zh-cn/sysinternals/bb896647. aspx

解决方案

回答

DotNetCoders上有一篇入门文章:http://www.dotnetcoders.com/web/Articles/ShowArticle.aspx?article=50,他们讨论了如何在配置文件中设置开关以及如何编写代码,但是它已经很老了(2002年)。在CodeProject上还有另一篇文章:http://www.codeproject.com/KB/trace/debugtreatise.aspx,但是年龄相同。
CodeGuru在自定义TraceListener上还有另一篇文章:http://www.codeguru.com/columns/vb/article.php/c5611

我想不起来最近的文章,希望这里的其他人会有所帮助

回答

我写了一篇有关使用跟踪侦听器的简短文章,可能会对我们有所帮助,特别是对于初学者而言http://www.daveoncsharp.com/2009/09/create-a-logger-using-the-trace-listener-in -csharp /