编译器禁用TraceInformation方法调用

时间:2011-06-21 10:25:01

标签: c# .net breakpoints tracesource

我在最后一行代码中加了一个断点。断点被禁用。为什么? 看起来代码被某些条件排除在外。 TraceSource的构造函数工作,我可以验证对象是否正常,所有侦听器都可以。它真的很奇怪。我停在int a = 1;然后调试器忽略它跳过TraceInformation。配置为DEBUG x86。

public TraceSource _fixTraceSource;

_fixTraceSource = new TraceSource(_configSection.TraceSourceName);

int a = 1; // dummy line to set breakpoint
_fixTraceSource.TraceInformation("FIX -> toAdmin Message: {0}", message.ToString());

1 个答案:

答案 0 :(得分:3)

标记为

TraceInformation

[Conditional("TRACE")]

因此,您需要在编译时定义的<{1}}符号才能包含它。这通常是通过检查项目属性页面中的“定义TRACE常量”框(默认情况下,它对于调试和发布配置文件都启用,因此有人在某些时候取消选中)。