Ответ 1
Оказывается, что я настроил конфигурацию на Release
, когда я начал отладчик. Когда я меняю его на Debug
, он работает так, как ожидалось!
У меня был знаменитый "В настоящий момент точка останова не будет удалена. Для этого документа не было загружено никаких символов". - проблема и была вдохновлена этой нитью:
Я начал отладчик, открыл Debug → Window → Modules, щелкните правой кнопкой мыши на сборке → Информация о загрузке символов. Это указывает на странное место:
C:\Windows\Microsoft.NET\Framework\v4.0.30319\Временные файлы ASP.NET {myProjectFolder}\8df46672\bbaeb99e\assembly\dl3\c29c5e19\aa46dcf7_10dccc01 {myProject}.pdb: символы загружены. `
Он исправил проблему для меня временно, когда я удалил {myProjectFolder}
. Но он все еще указывает на этот .pdb файл (VS восстанавливает временную папку после удаления). Я предполагаю, что он должен указывать на .pdb в каталоге bin, но, как в других сборках. Как я должен это исправить? Или это нормальное поведение?
спасибо для любых подсказок...
Изменить: это ASP.NET - Project (.NET 4.0), MVC 3. До сих пор нет COM-библиотек. Я снова удалил вышеупомянутый каталог и снова оказался в точке "Точка останова в настоящее время...". Если я открою окно "Модули", Symbol Status отобразит "Пропущенные символы загрузки". для всех сборок, кроме App_global.asax.exot9a5x.dll.
Изменить 2: веб-сайт настроен на работу в локальном IIS 7. Если я перейду на Visual Studio Development Server, отладка работает нормально. Кажется, связано с IIS?
Оказывается, что я настроил конфигурацию на Release
, когда я начал отладчик. Когда я меняю его на Debug
, он работает так, как ожидалось!
IIS 7, Visual Studio 2012, публикация в локальный IIS и отладка из Visual Studio.
Проблема возникает из-за того, что веб-приложение не может получить PDB из временной папки ASP.NET
Прежде чем что-либо делать, Перезапустить app_pool для вашего веб-приложения в IIS
Другим решением проблемы с точкой останова с файлом javascript является очистка кеша IE9. Я столкнулся с этой проблемой после обновления/сохранения js файла. Отладчик Visual Studio 2012 не будет обновлять .pdb, пока я не перейду в настройки Интернета и не удалю временные интернет файлы. Надеюсь, это немного сэкономит.
Просто записка о моей проблеме с этим, в конце концов, это кажется глупым, но все же я терял час в панике.
Мне пришлось удалить nuget, чтобы обновить его. После установки нового nuget и пакета, который я получил после того, как я получил ошибку точки останова.
Оказывается, что во время этих установок мои настройки публикации потеряли определенный порт, на котором я запускал проект dev. Будучи тем, что я так привык к этому номеру порта в течение последних 4 месяцев, я даже не думал об этом, но все время, когда я думал, что смотрю на машину dev, на самом деле он не работал на этом порту, и я смотрел на кэшированные страницы, которые уже были в моем браузере. DER!
Возможно, звучит глупо, но если это кому-то помогает.
Счастливое кодирование, К
Я ответил на аналогичный вопрос, который может решить вашу проблему. Было распространенной ошибкой оставлять проверенные "исключить сгенерированные символы отладки" в настройках публикации. Посмотрите мой ответ: fooobar.com/questions/435949/...
Чтобы решить эту проблему в VS 2015, мне пришлось:
Проблема возникла, когда я перепутался с менеджером конфигурации сборки и добавил свой собственный. Так или иначе, это изменило настройку Debug Info в проекте.
Чтобы исправить эту проблему в Web.config, мне просто пришлось добавить debug="true"
<system.web>
<compilation targetFramework="4.0" debug="true">
Что помогло мне найти это решение, он смотрел на окна Модули во время отладки и видел, что для моих загружаемых DLL-библиотек ASP.NET я имел: Binary не был создан с информацией об отладке.
Убедитесь, что вы не только устанавливаете VS2010, но также VS2010 Service Pack 1.
Я пробовал все выпущенные решения, включая переустановку - даже на новом компьютере без успеха! Вам нужен пакет обновления. После того, как вы его получите, попробуйте другие опубликованные решения, если проблема не исчезнет.