У вас есть два основных варианта, и любой из них может хорошо работать в зависимости от вашего приложения.
1) Просто поместите объекты в коллекцию ViewData. Это хорошо работает, если у вас много разных контроллеров, которые передают разные данные разным представлениям. Это также зависит от того, сколько вы хотите упаковать / распаковать от объекта, когда вы приводите объекты к их правильным типам. Этот параметр более гибкий, но менее безопасный для типов и, возможно, более хрупкий.
2) Создание строго типизированных объектов, которые содержат другие строго типизированные объекты, полезные для набора представлений. Это хорошо работает, если вы склонны передавать одни и те же данные большинству ваших представлений и у вас меньше контроллеров.
Вы также можете рассмотреть возможность передачи объекта, который предоставляет интерфейс, который может получать различные объекты модели (вроде класса локатора), но это, вероятно, вызывает больше проблем, чем исправляет их.