gpt4 book ai didi

c# - Trace.Write() 和 Trace.TraceInformation() 之间的区别

转载 作者:太空狗 更新时间:2023-10-29 21:53:57 27 4
gpt4 key购买 nike

Trace.Write 之间有什么区别?

Writes information about the trace to the trace listeners

Trace.TraceInformation

Writes an informational message to the trace listeners

最佳答案

不幸的是,这里的 API 很困惑,特定的重载会改变行为。方法级别的文档没有很好地描述这些方法,查看(反编译的)源代码有助于回答这个问题。

Trace.Write/WriteLine(string) 是实现重写以实际“写入”基本流的抽象方法,并且将接受任何插入的数据,无论任何跟踪/源配置如何。

Trace.Write/WriteLine(object)(和其他重载)应有效地视为原始“Trace.WriteVerbose”,因为它们应用了 Verbose ShouldTrace 过滤器。

因此

  • 要绕过过滤器直接写入底层流/提供程序,请使用 Trace.Write/WriteLine(string)

    将始终写入此跟踪文本。

  • 要编写信息性消息,请使用 Trace.TraceInformation。这通过应用信息过滤器的 TraceEvent 调用 Trace.WriteLine(string)Trace.TraceXYZ 方法还发出页眉/页脚。

    在需要追踪信息的时候会写入这个追踪事件。

  • 要编写冗长的文本,请使用 Trace.WriteLine(object)(或其他重载)。

    只有在应该跟踪 Verbose 时才会写入此文本。

所有形式的 Trace.Write/WriteLine 都会绕过额外的跟踪格式化并写入底层跟踪实现流。

关于c# - Trace.Write() 和 Trace.TraceInformation() 之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26350620/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com