Все зависит от функционала портала и cms MVC.
Для начала у меня было бы отдельное решение для доступа к модели / данным, чтобы вы могли иметь как можно больше проектов MVC без дублирования доступа к данным.
Из вашей желаемой структуры URL я бы, вероятно, использовал CMS в качестве отдельного контроллера и подпапки. В качестве альтернативы, если вы используете MVC 2, вы можете посмотреть на поддержку областей, что, вероятно, даст вам немного больше гибкости.
Если вы хотите, чтобы решение было более сложным / гибким, у вас есть несколько вариантов:
Если и портал, и MVC cms будут иметь одинаковую функциональность и макет страницы, у вас есть две главные страницы и определите, какую главную страницу показывать при возврате представления. Вы должны указать это в маршрутизации, чтобы несколько маршрутов указывали на разные контроллеры.
Если компоновка / функциональность немного отличаются, но один контроллер все еще может управлять, у вас может быть отдельный проект контроллера и два проекта mvc, которые содержат только представления, javascript и изображения, так что оба решения mvc смотрят на ваше решение контроллера. С этой опцией вы, вероятно, в конечном итоге настроите два веб-сайта в своем домене, один под корнем, а другой - в папке CMS (в вашем приложении MVC вам, вероятно, потребуется заблокировать маршруты к / CMS, чтобы он обрабатывался вашим приложением CMS ).
Наконец, если оба сильно различаются, имейте два отдельных проекта, но сохраняйте свой общий проект доступа к данным, как указано выше, вам может потребоваться настроить два сайта в пакете хостинга.