Эта точка останова в настоящее время не будет достигнута, исходный код отличается от оригинала (даже после очистки / восстановления) - PullRequest
12 голосов
/ 09 августа 2011

.NET 4, консольное приложение.Проект установлен в режим «Отладка».Настраиваемая точка останова находится в основном / начальном проекте.Я щелкнул правой кнопкой мыши -> Очистить и щелкнул правой кнопкой мыши -> Перестроить как на уровне решения, так и на уровне проекта.

Следуя инструкциям в этом вопросе SO , я подтвердил, что мои параметры «Построить и запустить» установлены на «запрос» для обоих «Когда проекты устарели» и «когда»происходят ошибки сборки или развертывания », и я НЕ получаю подсказку, когда мне F5 для сборки / запуска.

Кроме того, также выбран« сохранить все изменения »в разделе« перед сборкой »(плюс я сохранил их вручнуюсебя).

Я наблюдал за окном вывода приложения, см. следующую строку:

 'MyApplication.exe': (Managed (v4.0.30319)): Loaded 'C:\exepath' Symbols Loaded.

Я перезапустил экземпляр VS2010.Я перезапустил все открытые экземпляры VS2010 (других проектов).Я даже прошел перезагрузку.

Тем не менее, точка останова, которую я устанавливаю в проекте запуска, представляет собой полый красный кружок с уведомлением, что «Эта точка останова в настоящее время не будет достигнута, Исходный кодотличается от оригинала ', и, по сути, никогда не ударил.

Итак, это действительно 2 вопроса:

1) Как я могу исправить эту проблему, чтобы я мог правильно установить точку останова

2) Когда я вижу это, означает ли это, что мой код выполняется из более старой сборки?

Ответы [ 11 ]

9 голосов
/ 09 августа 2011

У меня однажды была эта проблема, но она была надстройкой vsto. В этом случае в моих каталогах users / appdata были оставлены промежуточные файлы, которые фактически были загружены вместо моего приложения.

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

3 голосов
/ 10 декабря 2012

Это также может произойти, если у вас есть решение с несколькими проектами, и в качестве стартового проекта в VS2010 и VS2012 выбран неправильный проект.

Теперь, очевидно, я не ожидал бы, что отладка будет работать, если у меня будет выбран неверный стартовый проект - отладчик подключается к неправильному процессу!

Но это сообщение об ошибке (в моем случае) вводило в заблуждение. Это заставило меня думать, что что-то еще было не так. Я попробовал несколько решений в этой теме (уничтожение различных / bin и выходных каталогов), когда на самом деле это было что-то очень простое (неправильный процесс запуска).

1 голос
/ 07 марта 2013

В моем случае была такая же проблема («Точка останова в настоящее время не будет достигнута. Исходный код отличается от исходной версии.»), Вызванная тем, что я пытался добавить точку останова в объявление:

DateTime dt;
bool b = DateTime.TryParse(null, out dt);

(первая строка кода)

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

1 голос
/ 05 июля 2012

Мое решение может помочь людям, подписавшим сборку.

После большого количества царапин на голове за последние два дня я смог решить эту проблему, выполнив следующие простые шаги:

  1. Перейдите в свойства проекта Visual Studio.
  2. Перейдите на вкладку «Подписание».
  3. Снимите флажок «Только для подписи», если установлен этот флажок.
  4. Теперь запустите ваш проект, и он должен работать. Для меня это работает.
1 голос
/ 10 августа 2011

Если вы используете vb, убедитесь, что вы строите проект для активной конфигурации решения (Build, Configuration Manager ..., проверен столбец в разделе Build. Также проверьте свойства проекта, вкладку Compile, Advanced Compile Options и Генерировать отладочную информацию установлено на Full. Извините, я не могу сказать вам, где это может быть в C #.

Единственный раз, когда я видел это, это когда два проекта в решении ссылаются на одну и ту же dll, но ссылаются из разных источников. Например, из ссылки на проект, а другой из ссылки на файл. Если опция «копировать локальный» имеет значение true, существует вероятность перезаписи dll более старой версией того же dll.

0 голосов
/ 16 мая 2016

выполнение "чистого решения" из VS Build Menu может вам помочь.

0 голосов
/ 25 января 2016

Мне пришлось пройти через все эти шаги, чтобы исправить проблему на моем компьютере.

  1. Убедитесь, что debug = "true" в вашем web.config

Очистить и перестроить все проекты

Удалить каждый файл в папке bin всех проектов

Закрыть и открыть Visual Studio, пересоберите и снова запустите проект.

0 голосов
/ 05 июня 2015

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

0 голосов
/ 14 апреля 2015

Просто зайдите в Инструменты / Импорт и Экспорт настроек. Выберите Сброс всех настроек, затем нажмите Далее Нет, просто сбросьте настройки, переписав мои текущие настройки, затем нажмите Далее. Выберите ваш текущий язык, например C #затем нажмите Готово

0 голосов
/ 08 сентября 2014

Я столкнулся с проблемой, когда в Project> Properties> Web не было выбрано «Enable Edit and Continue».После включения этой функции проблема была исправлена.

Важно отметить, что в разделе Инструменты> Параметры> Отладка> Изменить и продолжить было выбрано «Включить редактирование и продолжить», но оно не было включено для этого проекта.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...