Visual studio не будет отлаживать ссылки на DLL (из того же решения)

У меня есть решение Visual Studio 2008 с двумя проектами. DLL, A и веб-приложение, B.

B имеет ссылку на проект для A, а A.dll и A.pdb копируются в каталог B bin/.

Все настроено на компиляцию в режиме отладки.

Я могу запустить веб-сервер cassini и отлаживать веб-приложение B в порядке, но когда я пришел, чтобы вызвать метод в A.dll, нажатие F11 для входа в него не вступает в него, оно работает над ним. Я хочу войти в него.

Любые идеи, почему я не могу войти в исходный код A?

Изменить: Дополнительная информация

У меня нет "только моего кода".

Я могу установить точку останова в DLL, и она отображается как красный круг (не пустой), но он никогда не попадает.

Хммм... Я просто изменил код в DLL, который вызывается, чтобы начать с

throw new Exception("Hello");

И я не получаю исключения. Это довольно подозрительно...

Ответ 1

Ага!

Метод в B я вызывал возвращенный IEnumerator<SomeObject>. Это был блок итератора с ключевыми словами доходности и поэтому не выполнялся (так как я еще не написал потребителя).

вздыхать

Ответ 2

Наиболее вероятная проблема заключается в том, что Visual Studio не считает DLL частью "вашего кода". Способ обойти это - отключить функцию отладки "Только мой код".

  • Инструменты → Параметры → Отладка
  • Снимите флажок "Включить только мой код"

После этого вы сможете войти в свой код без каких-либо инцидентов.

Ответ 3

Тем, кто говорит, чтобы отключить "Just My Code", он конкретно утверждает, что два проекта находятся в одном и том же решении, так что это не будет применяться. Единственный логический вывод - ошибка пользователя/непонимание.

Ответ 4

У вас, вероятно, есть опция "Только мой код" в настройках вашей отладки. Отключите это, и вы можете перейти в код из dll.