Есть места, где я использую директиву компилятора #if DEBUG
, чтобы выбрать код для компиляции. До недавнего времени я смог опубликовать приложение ASP.NET MVC в режиме Debug или Release. На самом деле я все еще могу это сделать. Но теперь, по какой-то причине, независимо от того, какой режим я выбираю, я получаю только код Release на выходе. Если я загляну внутрь созданной dll с .NET Reflector, я вижу, что код после #if DEBUG
нет. Я проверил Define DEBUG constant
для режима отладки в свойствах проекта. Единственный способ, с помощью которого я могу работать, это определить константу DEBUG явно. Есть ли другое место, где я могу настроить параметры публикации помимо тех, которые публикуются?Код для режима отладки не компилируется при публикации
ответ
После Лота землеройных машин (и сразу же после публикации этого вопроса), я нашел файл с именем MyProjectName.pubxml под Projectname Недвижимость | PublishProfiles:
Там я нашел эту строку:
<DebugSymbols>False</DebugSymbols>
После установки этого значения True, он, наконец, был решен и работает должным образом. Я также заметил, что значение для LastUsedBuildConfiguration
было выпуском, хотя на самом деле это был отладка. Очевидно, что этот файл в какой-то момент не обновлялся. Надеюсь, это поможет тем, кто является кандидатами, потратить часы времени.
EDIT
я снова столкнулась с той же проблемой, но на этот раз мне нужно было наоборот, режим публикации. Изменение этого файла на этот раз не решило проблему. Поэтому я решил сделать то, что, по моему мнению, было бы лучше всего: просто удалите папку PublishProfiles, чтобы вам было предложено создать новый профиль публикации, когда вы попытаетесь опубликовать свое приложение в следующий раз. Это решило проблему.
EDIT2
Люди, я не понимал, что существует возможность выбрать конфигурацию. Выходит, нам нужно выбрать, какую конфигурацию нам нужно публиковать, независимо от того, какая конфигурация выбрана в самой визуальной студии.
Это хороший улов. Я вел меня с ума. Спасибо. –
В свойствах проекта, на вкладке Построения, у вас есть «Определить DEBUG постоянного» проверяются для конфигурации отладки? – DavidG
@DavidG, да конечно. Я сказал это в своем вопросе. –