Отладка Silverlight в Visual Studio 2010

У меня есть приложение MVC, в котором используется элемент управления silverlight.

Где-то по ходу дела что-то происходит в cs-коде silverlight, что не так. Я вставил точки останова в код CS silverlight, чтобы лучше понять, что происходит, но по какой-то причине я просто не могу пройти через код.

Я знаю, что код попадает, но он просто не отображается в отладчике.

Я подумал, что это может быть из-за того, что я использовал Chrome в качестве браузера по умолчанию, но я изменил его на Internet Explorer и все еще не радовался.

Я понимаю, что это очень расплывчатый вопрос, но испытывал ли кто-нибудь еще что-нибудь подобное, и если да, то как вы его обошли?

Любая помощь будет оценена,

Спасибо.


person 109221793    schedule 02.06.2011    source источник
comment
Вы установили IE по умолчанию в VS (а не в ОС), чтобы при нажатии F5 запускался IE?   -  person Jay    schedule 02.06.2011
comment
Привет, Джей. Я не устанавливал его по умолчанию из VS, однако, когда я нажимаю F5, он запускает IE.   -  person 109221793    schedule 02.06.2011
comment
Я ожидал, что это сработает, но попробуйте следующее: добавьте в проект файл aspx или html, щелкните его правой кнопкой мыши и выберите «Обзор с…», а затем установите значение по умолчанию для IE. Единственное другое предложение - поместить элемент управления SL в проект SL для целей отладки - я знаю, что это неоптимально.   -  person Jay    schedule 02.06.2011


Ответы (5)


Обязательно установите флажок Silverlight Debugging на веб-вкладке свойств проекта.

person Noah    schedule 03.06.2011

Если Chrome является вашим браузером по умолчанию и всплывающая подсказка точки останова показывает это сообщение:

«Точка останова в настоящее время не будет достигнута. Для этого документа не загружены символы»

... тогда возможно, что отладчик подключен к неправильному процессу Chrome при запуске отладки. Обход:

  1. Начните отладку своего приложения Silverlight. Ваше приложение должно работать в Chrome.
  2. В меню «Отладка» выберите «Присоединить к процессу ...».
  3. Прокрутите доступные процессы и найдите процесс chrome.exe, который показывает тип как «Silverlight x86».

  4. Выберите этот процесс и нажмите «Присоединить».

person Ervin Czimskey    schedule 27.01.2012

У меня был firefox в качестве браузера по умолчанию, и ничего не получалось (я даже пытался подключиться к процессу). Что в конечном итоге сработало для меня, так это установка IE по умолчанию.

Точки останова Silverlight теперь достигаются для меня! :)

person RayLoveless    schedule 03.04.2012
comment
Ага! windows.microsoft.com/ ru-ru / internet-explorer / - person DmitryBoyko; 16.04.2014

Щелкните правой кнопкой мыши проект Web.UI в решении. зайдите в Интернет, проверьте Отладчики -> Сохранение Silverlight и Отладка. Убедитесь, что у вас установлен разработчик Silverlight.

person sanket    schedule 03.06.2011

Ваш код может быть частью класса, отмеченного System.Diagnostics.DebuggerStepThroughAttribute. Это происходит с автоматически сгенерированными классами (например, с добавлением ссылки на службу). Если вы расширяете частичный класс, другие части определения класса могут иметь этот атрибут.

Попробуйте снять флажок Options / Debugging / General / Enable Just My Code.

В противном случае наведите указатель мыши на красную точку в окне исходного кода, которая станет пустым кружком, если отладчик отключил ее, всплывающая подсказка предоставит вам дополнительную информацию.

person Mart    schedule 03.06.2011