Visual Studio 2010 не перестраивает измененный код, если я не выбрал вручную «Перестроить» - PullRequest
62 голосов
/ 16 августа 2010

На прошлой неделе или около того я заметил, что Visual Studio 2010 не перекомпилирует код, пока я его не заставлю. Это проект C # 4.0 с WPF. Я нажал F5, который, похоже, использовал перестроение, если код изменился, и затем запустил приложение. Вместо этого теперь в левой нижней строке состояния отображается сообщение «Успешная сборка», и приложение запускается. Тем не менее, приложение не перестраивает приложение. Я могу сказать, потому что:

  1. , даже если я внесу большое количество изменений, он «компилируется» очень быстро и
  2. если я пытаюсь установить точку останова, она выдает предупреждение, что код изменился, и не установить точку останова.

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

Если я вместо этого выберу в меню, чтобы перестроить проект, он тогда будет работать. Однако этот вид препятствует моему обычному рабочему процессу. Я часто забываю сделать это, а затем провожу 10 минут, пытаясь понять, что, черт возьми, не так с моими изменениями. Хуже того, иногда возникают ошибки сборки, которые я сразу не замечаю.

Нажатие F6 для «перестройки» решения также ничего не делает. Какие настройки я мог бы изменить, чтобы вызвать такое поведение?

Ответы [ 2 ]

127 голосов
/ 23 августа 2010

Гах, я понял это.Естественно, это было что-то глупое, что я сделал, когда возился с настройками сборки после слишком поздней ночи.Вот что нужно проверить:

  1. Инструменты >> Параметры >> Проект и решение >> Построение и запуск >> Проверьте, установлен ли «При запуске, когда проекты устарели» на «Всегда»build "или" Prompt to build "
  2. Build >> Configuration Manager >> Убедитесь, что« Build »отмечен для всех проектов, которые вы хотите построить для каждой конфигурации, которую вам нужно использовать.
1 голос
/ 26 января 2018

Также, если в проекте несколько проектов, проверьте менеджер конфигурации.Если у вас есть несколько проектов «Любой процессор» и несколько «x86», будут построены только проекты одной архитектуры.То же самое с конфигурацией «Debug» и «Realese».

...