2017-01-18 4 views
2

Насколько я знаю, Debug.Assert не будет работать без "define": [ "DEBUG" ] в project.json. Я хочу иметь его на dev-машине и вырезать на сервере сборки. Должен ли я просто изменить файл project.json как txt после проверки на сервере сборки, или есть более элегантный способ?Как использовать конфигурацию сборки VisualStudio для определения DEBUG для проекта ядра dotnet?

PS. Я знаю о «project.json в 2017 году».

+0

Вы имеете в виду константу DEBUG, также находящуюся в настройках проекта> create> define DEBUG constant? – Essigwurst

ответ

3

Вы можете определить различные варианты для различных конфигураций в project.json. На сервере сборки вы можете создать конфигурацию «Release».

{ 
    "configurations": { 
    "Debug": { 
     "buildOptions": { 
     "define": ["DEBUG", "TRACE"] 
     } 
    }, 
    "Release": { 
     "buildOptions": { 
     "define": ["RELEASE", "TRACE"], 
     "optimize": true 
     } 
    } 
    } 
} 
+0

Спасибо за ссылку. Однако я замечаю, что Debug.Assert работает _without_ any 'define'. И после определения ничего не изменилось в Properties> Build> General. – smg

+0

См. Мое редактирование. Похоже, Microsoft обновила его до 'buildOptions', а не' compilationOptions'. –

+0

Да, я набрал так, но в любом случае - '' DEBUG '', по-видимому, определяется по умолчанию для конфигурации Debug, а страница свойств проекта предполагает только 'define' в topOver' buildOptions'. Поэтому вопрос не нуждается в ответе. – smg

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