Вы сталкиваетесь с недостатком ASP.NET при использовании с большими веб-приложениями.
DotNetNuke имеет много значимых DLL и VB-файлов, которые нужно будет заново обработать, если все, что вам нужно сделать, это изменить одну-единственную DLL. Если в вашей корзине 50 модульных DLL, все 50 модульных DLL будут повторно обработаны ASP.Net при следующем запросе приложения.
Вот мое предложение:
Подключите следующие папки к вашему источнику управления (не всю папку DNN):
- bin (я предлагаю игнорировать все DNN DLL, поэтому обновления идут более гладко)
- Portals_default \ Skins
- Portals_default \ Контейнеры
- JS
- DesktopModules (игнорировать Admin или любые встроенные модули)
- изображений (игнорируйте основные DNN-изображения, если хотите, или любые ваши собственные неуклюжие папки изображений, такие как тысячи фотографий клиентов)
- (необязательно) CompanyName \ (где вы можете оставить другие проекты .NET, которым необходим относительный доступ к DLL, в папке bin)
Когда одному из ваших разработчиков требуются повторяющиеся компиляции / загрузки страниц, он больше всего выиграет, удалив как можно больше DLL-файлов в папке bin. Это также поможет использовать скин для скелетов, если вы можете (их очень легко сделать).
Базовая оболочка (которая должна использовать не более 1 или 2 объектов оболочки) и абсолютный минимум DLL (DNN Core + собственный минимум) обеспечит вам максимальную скорость разработки.
Когда ваш разработчик завершит целенаправленную разработку одного модуля, он может обновить те папки, в которых он удалил элементы из системы контроля версий (см. Здесь), завершить тестирование своего кода в контексте полного набора DLL / скинов и он будет установлен.
Иногда это стоит того. Я не могу довести вас до нескольких секунд обработки ASP.NET, но я могу довести вас до 10-15 секунд. (если вы работаете на SSD)
После возобновления производства убедитесь, что ваш пул приложений перезапускается в нерабочее время.
Я смотрел, могут ли многоядерные установки как-то уменьшить это время обработки, но мне не повезло (у меня открытый вопрос по поводу ошибки сервера)