powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Условная компиляция
13 сообщений из 13, страница 1 из 1
Условная компиляция
    #38293891
rsolanov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем доброго дня, подскажите пожалуйста, как в проекте Visual Studuo 2010 (C#) реализовать условную компиляцию таким образом, что когда конфигурация проекта установлена в "Debug" выполнялся один код, а когда конфигурация установлена в "Release", то другой? Точнее говоря, мне необходимо чтобы в режиме отладки использовалась другая часть кода, а когда компилирую для последующей публикации, то компилятор использовал другой блок кода.
...
Рейтинг: 0 / 0
Условная компиляция
    #38293896
ALOTE
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rsolanov,
Выносить часть кода которая заменяется во внешние dll?
...
Рейтинг: 0 / 0
Условная компиляция
    #38293901
Фотография Belavik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
#if DEBUG .. #endif
...
Рейтинг: 0 / 0
Условная компиляция
    #38293902
bazile
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rsolanov, для Debug конфигурации по умолчанию определяется константа DEBUG с помошью которой можно отличать debug от release:
Код: c#
1.
2.
3.
4.
5.
#if DEBUG
    // Код для Debug конфигурации
#else
    // Код для других конфигураций
#endif


Для решения какой задачи тебе потребовалась условная компиляция?
...
Рейтинг: 0 / 0
Условная компиляция
    #38293906
Фотография aleks-sam
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ALOTErsolanov,
Выносить часть кода которая заменяется во внешние dll?
:)
...
Рейтинг: 0 / 0
Условная компиляция
    #38293953
rsolanov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
bazilersolanov, для Debug конфигурации по умолчанию определяется константа DEBUG с помошью которой можно отличать debug от release:
Код: c#
1.
2.
3.
4.
5.
#if DEBUG
    // Код для Debug конфигурации
#else
    // Код для других конфигураций
#endif


Для решения какой задачи тебе потребовалась условная компиляция?В приложении настроено ведение журнала с помощью библиотеки Nlog, поэтому когда я проектирую код, добавление тысяч записей в БД необходимо исключить.
...
Рейтинг: 0 / 0
Условная компиляция
    #38294012
rsolanov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: c#
1.
2.
3.
4.
5.
#if DEBUG
#else
    LoggingRule dbRule = new LoggingRule("*", LogLevel.Debug, dbTarget);
    config.LoggingRules.Add(dbRule);
#endif

Теперь все работает, спасибо )
...
Рейтинг: 0 / 0
Условная компиляция
    #38294023
rsolanov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Что интересно: когда в студии выставляешь дебаг, то две строчки кода моментально становятся серыми, если переключить в релиз сразу становятся цветными )
...
Рейтинг: 0 / 0
Условная компиляция
    #38294032
Фотография Belavik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rsolanovbazilersolanov, для Debug конфигурации по умолчанию определяется константа DEBUG с помошью которой можно отличать debug от release:
Код: c#
1.
2.
3.
4.
5.
#if DEBUG
    // Код для Debug конфигурации
#else
    // Код для других конфигураций
#endif



Для решения какой задачи тебе потребовалась условная компиляция?В приложении настроено ведение журнала с помощью библиотеки Nlog, поэтому когда я проектирую код, добавление тысяч записей в БД необходимо исключить.
А там нет как в Log4Net log.Debug("")?
...
Рейтинг: 0 / 0
Условная компиляция
    #38294072
rsolanov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Belavikrsolanovпропущено...
В приложении настроено ведение журнала с помощью библиотеки Nlog, поэтому когда я проектирую код, добавление тысяч записей в БД необходимо исключить.
А там нет как в Log4Net log.Debug("")?Да, есть
Код: c#
1.
2.
Log.Debug(...);
Log.DebugException(...);

Только как это поможет?
...
Рейтинг: 0 / 0
Условная компиляция
    #38294111
rsolanov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Belavik, точнее я не знаю как работает
Код: c#
1.
2.
Log.Debug(...);
Log.DebugException(...);

Если знаете что и как, прошу Вас, подскажите плиз )
...
Рейтинг: 0 / 0
Условная компиляция
    #38294220
Фотография Belavik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rsolanovBelavik, точнее я не знаю как работает
Код: c#
1.
2.
Log.Debug(...);
Log.DebugException(...);


Если знаете что и как, прошу Вас, подскажите плиз )
Я не совсем понял Вашу задачу, но данный функционал для записи логов в режиме дебага
...
Рейтинг: 0 / 0
Условная компиляция
    #38294262
bazile
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rsolanov
Код: c#
1.
2.
3.
4.
5.
#if DEBUG
#else
    LoggingRule dbRule = new LoggingRule("*", LogLevel.Debug, dbTarget);
    config.LoggingRules.Add(dbRule);
#endif


Теперь все работает, спасибо )
Можно чуть проще:
Код: c#
1.
2.
3.
4.
#if !DEBUG
    LoggingRule dbRule = new LoggingRule("*", LogLevel.Debug, dbTarget);
    config.LoggingRules.Add(dbRule);
#endif
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Условная компиляция
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]