在运行时切换TraceSwitch

时间:2010-03-01 18:26:20

标签: c# tracing system.net traceswitch

我正在尝试访问我的应用程序中.NET System.Net跟踪功能中提供的一些诊断信息。

我知道我可以使用适当的.config设置跟踪级别,但我希望能够以编程方式切换交换机。 (即在我的程序执行的特定部分期间打开跟踪)。

我有办法在代码中切换System.Net跟踪功能使用的TraceSwitch / TraceSource吗?

我知道This SO question,但这种情况似乎有所不同,因为根本问题是有问题的库正在为每次写调用创建一个新的TraceSwitch。

1 个答案:

答案 0 :(得分:1)

如果您不介意弄脏手,可以尝试使用反射切换私有静态bool System.Net.Logging.s_LoggingEnabled(.NET 2)。

请参阅this question中的更多详细信息和替代方案。