Структура и развертывание веб-приложений

Наш продукт представляет собой веб-приложение ASP.Net. В настоящее время мы используем проекты веб-сайтов в Visual Studio, но уже давно изучаем возможности использования проектов веб-приложений. В настоящее время я изучаю их, чтобы мы могли надеяться улучшить наш процесс развертывания.

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

Рассматривая переход к проектам веб-приложений в Visual Studio, мы надеялись создать базовый проект, затем создать клиентские проекты и настроить ссылки на базу. Кажется, эта структура работает нормально, но когда мы пытаемся развернуть приложение из клиентского проекта с использованием MSDeploy, публикуется только dll с базового веб-сайта. Это хорошо для некоторых вещей, ссылки на скомпилированный код полезны, но есть другие элементы, такие как изображения, страницы js, htm и т. Д., Которые по-прежнему являются исходными и требуются для работы клиентского приложения. Нам нужно больше, чем скомпилированный код с нашего базового веб-сайта.

Это все, как говорится, я могу придумать несколько вариантов здесь:

Продолжить развертывание в 2 этапа. Сначала базовый веб-сайт, затем клиентский веб-сайт для создания полного продукта.Измените процесс развертывания, чтобы скопировать необходимые исходные файлы из базового проекта.Перепроектируйте нашу модель, чтобы поддержать эти отношения базового клиента другим способом. Не совсем уверен, как это будет работать, и будет наименее жизнеспособным вариантом.??

Есть ли другой вариант, который мне не хватает? Я делаю что-то не так с тем, как я настраиваю свои проекты? Можно ли сделать ссылку на веб-приложение на другое веб-приложение помимо совместного использования скомпилированного кода? Если это так, почему бы вам не использовать библиотеку общих классов? Или, может быть, мне чего-то не хватает в процессе MS Deploy?

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

Обновление: процесс двойного развертывания работает, но кажется немного грязным. Любой другой вклад?

Ответы на вопрос(4)

Ваш ответ на вопрос