Отладка пользовательского элемента управления из ASP.NET - PullRequest
0 голосов
/ 03 декабря 2008

У меня есть сайт ASP.NET (2.0). Я использую V Studio 2008 и IIS. У меня есть отдельный проект User Control, который вызывается из функции javascript на странице default.aspx. Проект User Control находится в другом решении.

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

Я не могу войти в проект управления пользователями, т.е. отладить его. Я могу установить точки останова, но они никогда не попадают в ловушку. Я могу без проблем отлаживать все остальные области сайта как в скрипте, так и в коде. Пользовательский элемент управления встроен в DEBUG в то же место, что и страница default.aspx.

Вещи, которые я уже пробовал: Включена отладка скриптов в IE. Добавил проект управления пользователями в то же решение веб-сайта Прикрепленный отладчик к запущенному экземпляру IE из Visual Studio Включена отладка на сайте. Построил пользовательский элемент управления в режиме отладки и убедился, что pdb находится в том же каталоге

Ниже приведен пример кода, который должен помочь:

default.aspx: (сокращение для краткости)

функция LoadMethod () { пытаться { LoadControl.Ping ();

        }
        catch (e) //if the DLL didn't run assume there is a trust problem.
        {    
        }
    }

Когда я перехожу к вызову LoadControl.Ping, отладчик просто переходит эту строку кода.

Пожалуйста, оставляйте отзыв, только если вы действительно сделали это на практике.

Ответы [ 2 ]

1 голос
/ 03 декабря 2008
  • Добавьте проект управления пользователями в решение, в котором вы хотите выполнить отладку.
  • Удалите ссылку, которую вы имеете на пользовательский проект управления
  • Затем установите ссылку на вызывающий проект, который будет локальным проектом управления пользователями

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

0 голосов
/ 11 июня 2009

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

Кое-что из сообщения в блоге не упоминается: как только вы настроили свой проект на использование IIS вместо webdevwebserver и задали URL-адреса переопределения, вам иногда нужно сделать что-то дополнительное, чтобы заставить работать отладку. Щелкните правой кнопкой мыши по проекту -> Debug -> Start New Instance. Кажется, это единственный способ, которым я могу надежно отлаживать один из наших проектов usercontrol. Имейте в виду, что этот конкретный проект был перенесен с 1.1 до 3.5, так что, вероятно, он недоволен некоторыми другими вещами: -)

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