Допустим, у вас есть большой веб-сайт, содержащий несколько отдельных приложений, которые выполняются на одном сайте для выполнения различных задач. Вы не хотите управлять всем как одним проектом, поэтому вы разбиваете их на части, работаете над ними в полной изоляции друг от друга и просто развертываете их отдельно в одной среде выполнения.
Эти приложения будут работать в одном процессе. Нет виртуальных каталогов или изоляции приложений. Они будут делиться такими вещами, как сессия, кеш, куки и т. Д.
Конечно, программные компоненты и библиотеки классов - это просто библиотеки DLL в папке bin, но что из материала уровня представления, который имеет для интеграции в среду выполнения? Как насчет совместного использования ресурсов уровня кода, которые я упомянул выше - куки, сеанс, кеш и т. Д.? А как насчет базовых классов страниц?
Пример: мне кажется, что каждое подпрограмма должна быть «осведомлена о главной странице» - она должна знать, где будет располагаться главная страница и какие ContentPlaceHolders доступны, потому что веб-формы подпрограмм будут нужны ссылаться на этот материал.
Есть еще какие-нибудь мысли здесь? Предположим, что под-приложения будут использовать одну и ту же главную страницу, тему и все остальное на уровне представления, чтобы они были полностью интегрированной частью целого. Но они будут работать в разных проектах Visual Studio разными командами разработчиков, которые ничего не знают друг о друге, кроме того, что абсолютно необходимо.
Кто-нибудь хочет поделиться некоторыми лучшими практиками здесь?