Именно такой подход я использую. Иметь базовый класс MasterViewData, содержащий информацию, которая может быть общей для всех страниц и используется для визуализации главной страницы (вошел в систему, когда пользователь не использует встроенную аутентификацию, сообщения на уровне страницы). Все остальные мои классы данных производных от него.
Я также делаю то, что упоминает Роберт: у меня есть базовый класс контроллера, который переопределяет метод View, который фактически обрабатывает помещение части информации главной страницы в классы viewdata.
Мне любопытно, есть ли другие варианты, но этот подход определенно сработал для меня.