2014-11-28 5 views
-1

My C# app находится в режиме отладки. Я пытаюсь использовать Debug.WriteLine (xxx), но ничего не записывается в консоль. Я использую сообщество VS 2013 с C#. У меня есть #define DEBUG в начале файла cs, выше операторов using, а затем #IF DEBUG перед операторами Debug.WriteLine(), но ничего не происходит. Нет ошибок.#if DEBUG не работает

+1

Покажите нам код. – Bort

+0

Можете ли вы показать код, в котором вы его пытаетесь использовать? – alykins

+2

'Debug.WriteLine' * не записывает на консоль, записывает на прослушиватели трассировки. –

ответ

4

Отладочный вывод по умолчанию не перенаправляется на консоль.

Вы можете создать ConsoleTraceListener экземпляр и добавить к следовым слушателям, что будет сделать вывод отладки идти на консоль:

using (ConsoleTraceListener listener = new ConsoleTraceListener()) { 
    Trace.Listeners.Add(listener); 

    Debug.WriteLine("test"); 

} 

Вы также можете сделать это в настройках, так что это относится и к приложение без добавления кода. Пример:

<configuration> 
    <system.diagnostics> 
    <trace autoflush="false" indentsize="4"> 
     <listeners> 
     <add name="configConsoleListener" 
      type="System.Diagnostics.ConsoleTraceListener" /> 
     </listeners> 
    </trace> 
    </system.diagnostics> 
</configuration> 

Ссылка: ConsoleTraceListener Class

0

Вы проверили выходную консоль Visual Studio? Если вы запускаете свое приложение в Visual Studio (= отладка), там выводится вывод Debug.

+0

Если вы имеете в виду тот же результат, что использует консоль? Я использую это. – Ron

Смежные вопросы