Отладка модулей DotNetNuke

Какова наилучшая настройка решения VS для разработки межмодульной связи DotNetNuke 4.8?

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

Мне любопытно, как другие люди справляются с этим — есть ли способ заставить ваши тестовые страницы имитировать среду Nuke? Вы тестируете прямо на ядерном сайте? Мое решение находится в системе управления версиями с использованием VSS, поэтому я не хочу добавлять полный ядерный веб-сайт в качестве проекта в свое решение, поскольку это заставит меня добавить его в исходный контроль, и я бы предпочел не иметь полного ядерного сайта в управления источником.

Я смог выполнить отладку, подключившись к локальному рабочему процессу IIS, но это немного больно. Есть ли у кого-нибудь какие-либо предложения относительно того, как облегчить боль от отладки связи между модулями?

Любые предложения будут ценны.


person Scott Ivey    schedule 16.03.2009    source источник


Ответы (2)


Обычно мы тестируем на сайте разработки DotNetNuke, обычно просто подключаясь к рабочему процессу IIS для отладки (просто потому, что это быстрее, чем перестроение с помощью F5).

В общем, я думаю, что чем больше вы используете то, что предоставляет DNN, тем меньше вы сможете тестировать вне среды DNN. Поскольку IMC — это особый процесс DNN, вы не сможете провести полное тестирование, пока не разрешите DNN выполнять этот процесс.

person bdukes    schedule 16.03.2009

После множества проб и ошибок вот что у меня получилось - и, кажется, работает хорошо.

  1. Создано событие Post-build в проекте модуля для копирования на локальный сайт ядерной бомбы для отладки. Найдено в разделе "Свойства/События сборки/Командная строка события после сборки"... копировать $(TargetDir)$(TargetName).* C:\Inetpub\wwwroot\bin* /y
  2. Изменены веб-настройки для запуска локального веб-сайта по умолчанию. Найдено в разделе «Свойства/Интернет/Серверы/Использовать пользовательский веб-сервер» — изменено на «http://localhost/"
  3. Созданы события после сборки для поддержки проектов библиотеки классов для копирования файла на локальный веб-сервер. Также можно было просто изменить событие после сборки в проекте модуля, чтобы включить другие файлы.

После того, как эти настройки будут установлены, нажатие F5 для запуска проекта запустит браузер и автоматически подключится к рабочему процессу IIS.

Кроме того, имейте в виду, что если вы запускаете это на машине с UAC (Vista, win 2008, win 7), вам придется запускать VS от имени администратора, поскольку как для копирования в wwwroot, так и для подключения к рабочему процессу требуются повышенные привилегии. .

person Scott Ivey    schedule 18.03.2009