В Visual Studio 2010, если вы перейдете к свойствам проекта и перейдите на вкладку "Построение", появится флажок "Определить TRACE Constant". Что эквивалентно выполнению #define TRACE.
Все методы System.Diagnostics.Trace имеют вокруг них [Conditional("TRACE")]
.
Мой вопрос, почему вы когда-нибудь это отключили? Я имею в виду, если у вас нет определенных треков-слушателей, то это не значит, что вы собираетесь заполнить журнал или что-то еще. Это просто странно для меня. Если вы пытаетесь использовать вызовы Trace, почему бы вам не контролировать его через App/Web.config, а вместо этого контролировать его с помощью переключателя компилятора, который исключает возможность включения его без перекомпилировать.
Я что-то упустил? Наверняка, это не может быть так плохо для производительности, не так ли?