Как Razor Layout получает имя вида, используя его? - PullRequest
2 голосов
/ 13 марта 2011

My Layout отображает меню, используя Html.RenderAction.Действие требует, чтобы имя контроллера и имя представления были переданы ему, чтобы он мог определить, какие пункты меню отображать в зависимости от профиля пользователя и страницы, на которой он находится.Я могу получить имя контроллера, используя ViewContext.Controller.ToString (), но не могу найти эквивалент для представления, использующего макет.Это должно быть где-то там, но у меня закончились догадкиЯ знаю, что мог бы поместить это в ViewBag для каждого View, но это зависит от того, что я не забывал делать это каждый раз, от чего я слишком стар и устал, чтобы зависеть от него.

1 Ответ

3 голосов
/ 13 марта 2011

Можете ли вы связать его с действием вместо отображаемого представления?Вы можете получить действие из RouteData в ViewContext.

var action = ViewContext.RouteData["action"] as string;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...