Я бы предложил использовать для этого Common Service Locator. По сути, каждая область может настроить CSL для своего конкретного контейнера.
Возможно, вам потребуется создать адаптер между средством разрешения зависимостей или вообще отказаться от него и строго использовать CSL.
В общем, я не сторонник использования CSL в бизнес-приложениях. Его цель - упростить интеграцию компонентов с открытым исходным кодом, таких как MassTransit, в линейку бизнес-приложений. Однако это может быть исключением.
Кроме того, посмотрите на переносимые области mvccontrib. Он предназначен для такого типа вещей.