【发布时间】:2014-03-07 20:51:12
【问题描述】:
有没有更好的方法从 asp.net mvc 的母版页视图中查找控制器名称?
谢谢 阿楚。
【问题讨论】:
标签: asp.net asp.net-mvc
有没有更好的方法从 asp.net mvc 的母版页视图中查找控制器名称?
谢谢 阿楚。
【问题讨论】:
标签: asp.net asp.net-mvc
StackOverflow - Getting the name of the controller and action method in the view in ASP.NET MVC:
<%: ViewContext.RouteData.Values["Controller"] %>
<%: ViewContext.RouteData.Values["Action"] %>
【讨论】:
ViewContext.RouteData.Values 是 RouteValueDictionary 并且需要将值转换为字符串以进行比较,例如 <%=(string)ViewContext.RouteData.Values["Action"] == "Index" ? ... (并为自己节省 10 分钟的痛苦,并希望您可以使用 RoR甚至 gasp PHP)。
比什么更好?母版页应该有一个 ViewContext,它允许您获取 RouteData。您应该能够使用“controller”和“action”键从 RouteData 中获取控制器和操作的名称。
【讨论】:
在 MVC 4.0 中处理如下。
控制器:@ViewContext.RouteData.Values["Controller"]
动作:@ViewContext.RouteData.Values["Action"]
【讨论】: