Для всех моих строго типизированных моделей представления я использую общий базовый класс и интерфейс для этого. По умолчанию главная страница получает их.
public class ViewModelBase : IViewModel {
public string InformationForMasterPage{get;set;}
}
public class ViewModelHomePage : ViewModelBase{
public string SomeInformationNotNeededForMasterPage{get;set;}
}
public interface IViewModel{
public string InformationForMasterPage{get;set;}
}
Вверху домашней страницы:
<%@ Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<ViewModelHomePage>" %
Тогда для вершины мастер-страницы:
<%@ Master Language="C#" Inherits="System.Web.Mvc.ViewMasterPage<IViewModel>" %>
А потом глубоко в главной странице:
<%: Model.InformationForMasterPage %>
Будет работать просто отлично.