#if выпустит работу как ОТЛАДКА #if, делает в C#?

Измените свой UserInfo класс

public class UserInfo
{
    public string FirstName { get; set; }
    public string LastName { get; set; }
    public string FullName { get; set; }
    public string DepartmentCode { get; set; }
    public string DesignationCode { get; set; }
    public string DesignationName { get; set; }
}

и это.

label1.Text = returnValues.Single().DepartmentName;

Хотя я не представляю, чего бы вы достигли с этим результатом.

263
задан sepp2k 8 March 2019 в 22:58
поделиться

7 ответов

Нет, это не будет, если Вы не сделаете некоторую работу.

важная часть здесь - то, что действительно ОТЛАДКА, и это - своего рода константа, определенная это, компилятор может проверить по.

при проверке свойств проекта под вкладкой Build, Вы найдете три вещи:

  • текстовое поле А маркировало "Conditional compilation symbols"
  • , флажок А маркировал "Define DEBUG constant"
  • , флажок А маркировал "Define TRACE constant"

нет такого флажка, ни постоянный / символ предопределил, который имеет имя ВЫПУСК.

Однако можно легко добавить, что имя к текстовому полю, маркированные символы Условной компиляции, но удостоверяются, что Вы устанавливаете конфигурацию проекта на режим Выпуска прежде, чем сделать так, поскольку эти настройки на конфигурацию.

Так в основном, если Вы не добавляете, что к текстовому полю, #if RELEASE не произведет кода в соответствии ни с какой конфигурацией.

258
ответ дан Ronan Boiteau 23 November 2019 в 02:29
поделиться

RELEASE не определяется, но можно использовать

#if (!DEBUG)
  ...
#endif
379
ответ дан CharlesB 23 November 2019 в 02:29
поделиться

Нет.

, В то время как в настройке отладочного процесса существует DEBUG, определил постоянный (автоматически определенный Visual Studio), в то время как нет такой константы, определенной для режима выпуска. Проверьте свои настройки проекта под сборкой.

Выбор [Определяет ОТЛАДКУ, постоянную] под Проект->, Сборка похожа включая ОТЛАДКУ #define в начале каждого файла.

, Если Вы хотите определить ВЫПУСК, постоянный для конфигурации выпуска, переходят в:

  • Свойства проекта-> Сборка
  • Избранный Режим Выпуска
  • в символы Условной компиляции текстовое поле войдите: ВЫПУСК
39
ответ дан Pop Catalin 23 November 2019 в 02:29
поделиться

На моей установке VS (VS 2008) #if RELEASE не работает. Однако Вы могли просто использовать #if !DEBUG

Пример:

#if !DEBUG
SendTediousEmail()
#endif
24
ответ дан Ronan Boiteau 23 November 2019 в 02:29
поделиться

"Pop Catalin" разобрался в нем. Управление определением на основе типа сборки обеспечивает большую гибкость. Например, Вы можете иметь "ОТЛАДКУ", "ДЕМОНСТРАЦИЮ", и "ВЫПУСТИТЬ" конфигурацию все в том же решении. Это предотвращает потребность в программировании дубликата с двумя различными решениями.

Так да #if RELEASE или #if (RELEASE) работы то же как #if DEBUG, когда символ Условной компиляции ВЫПУСКА определяется.

следующее взято из сообщения "Pop Catalin": Если Вы хотите определить ВЫПУСК, постоянный для конфигурации выпуска, переходят в: * Свойства проекта -> Сборка * Избранный Режим Выпуска * в символы Условной компиляции текстовое поле входят: ВЫПУСК

4
ответ дан 23 November 2019 в 02:29
поделиться

Я никогда не видел, что прежде..., но видел:

#if (DEBUG == FALSE)

и

#if (!DEBUG)

, Что работа для Вас?

10
ответ дан Pete H. 23 November 2019 в 02:29
поделиться

почему не всего

#if RELEASE
#undef DEBUG
#endif
-7
ответ дан Matt Davison 23 November 2019 в 02:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: