С учетом того, что на нескольких веб-сайтах используется один и тот же исходный код, каков наилучший / наиболее удобный способ организовать их в проекты в пределах Visual Studio?
Например, скажем, у нас есть веб-сайты Red
, Blue
и Green
(и т. Д.). Их HTML может отличаться, но они функционально одинаковы.
Ранее в одном решении мы создали один проект Colour
, который содержит общую версию проекта. Red
, Blue
и Green
получают свой собственный проект, и каждая техническая страница настроена на использование C # в Colour
. (То есть не существует уникального C # для отдельных реализаций - все файлы кода удаляются).
Тем не менее, этот подход приводит нас к тому, что в конечном итоге мы получаем несколько отдельных библиотек реализации, которые практически ничего не делают, а также другие вещи, такие как javascript, css и обычные изображения, дублируются в разных проектах.
В идеале мы хотели бы иметь возможность запускать каждый проект изолированно, а совместное использование источников всегда кажется ужасной идеей.
Есть ли лучший путь?
edit: забыл упомянуть, что вся бизнес-логика / доступ к данным обрабатывается совместно используемым проектом Business Layer, поэтому весь код для этого является отдельным и общим.