2013-09-27 4 views
4

Как найти, находится ли он в режиме отладки или режиме деблокирования? Есть ли другие способы его найти?C# Режим отладки и освобождения

#if(DEBUG) 
{ 
     Console.WriteLine("Debug mode"); 
     //Or Things to do in debug mode 
} 
    #else 
{ 
     Console.WriteLine("Release mode"); 
     //Or Things to do in Release mode- May be to change the text, image 
} 
#endif 
+6

Это обычный способ, каким другим способом вы имели в виду? –

+2

См. Http://blogs.msdn.com/b/ericlippert/archive/2009/09/10/what-s-the-difference-between-conditional-compilation-and-the-conditional-attribute.aspx –

ответ

1

Вы можете попробовать использовать System.Diagnostics:

if (Debugger.IsAttached) {...?

+2

Это проверяет если подключен отладчик, который может произойти либо в режиме отладки, либо в режиме освобождения –

6

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

#if DEBUG 
    Console.Writeline("debug"); 
#else 
    Console.Writeline("release"); 
#endif 
    // You can also check if a debugger is attached, which can happen in either debug or release 
    if (Debugger.IsAttached) 
     Console.WriteLine("debugger attached"); 
+0

@Kevin DiTraglia Другой способ: для режима отладки мы можем использовать [Условный («DEBUG»)]. – Dev

+0

Как вы сказали, это единственный способ: для режима отладки мы не можем использовать [Условный («DEBUG»)]? – Dev

+0

@ Rashmi Eric Lippert уже прокомментировал ConditionalAttributes. Вы читали его ссылку и блог? Ваш вопрос не очень ясен в отношении того, что вы пытаетесь выполнить ... Есть ли причина, по которой метод, который вы показали, недостаточно для вас? Вопросы должны быть сосредоточены на реальной проблеме, с которой вы столкнулись, в чем проблема? – Alan

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