Я делаю что-то подобное для генерации заголовков страниц, и это хорошо работает. Поместите ваш тег на главной странице как обычно:
<%= Html.Encode(ViewData["Title"]) %>
Затем подкласс ActionFilterAttribute
и переопределить OnActionExecuting
. Оттуда вы получаете доступ к контексту контроллера и можете установить для своих viewdata все, что захотите.
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
filterContext.Controller.ViewData["title"] = "whatever";
}
Последний шаг - установить атрибуты ваших контроллеров, которые вы хотите использовать в контексте фильтра. Вы можете наследовать от базового контроллера, если хотите добавить атрибут ко всем классам. Есть также перегрузки, если вы хотите передать параметры. В моем приложении. Я фактически передаю заголовок страницы.
Надеюсь, это поможет.