更好的从ASP.NET MVC主页面视图中查找控制器名称的方法

10

有没有更好的方法在ASP.NET MVC中从母板视图(masterpage view)中找到控制器名称(controller name)?

谢谢 achu.

3个回答

34

2
请注意,ViewContext.RouteData.Values 是一个 RouteValueDictionary,而且值需要强制转换为字符串进行比较,例如 <%=(string)ViewContext.RouteData.Values["Action"] == "Index" ? ...(这样可以节省你10分钟的痛苦,让你希望你能使用 RoR 或甚至是 gasp PHP)。 - Rebecca Scott
2
为什么要强制转换为字符串,当你可以使用更安全的.ToString()方法呢? - Levi Botelho

3
比什么更好?母版页应该有一个ViewContext,它允许您获取RouteData。您可以使用“controller”和“action”键从RouteData中获取控制器和操作的名称。

0
在MVC 4.0中,处理方式如下。
控制器:@ViewContext.RouteData.Values["Controller"]
操作:@ViewContext.RouteData.Values["Action"]

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接