在ASP.Net MVC中获取视图中控制器和动作方法的名称

33
在 ASP.Net MVC 视图中,是否有一种方法可以获取正在使用该视图的控制器和操作方法的名称?
2个回答

46

试试这个:

<%= ViewContext.RouteData.Values["Controller"] %>
<%= ViewContext.RouteData.Values["Action"] %>

这些名称将反映请求URL的大小写。您对它们的操作不应区分大小写。(我就掉进了这个陷阱。) - Frédéric

5
<%= ViewContext.RouteData.Values["Controller"] %>
<%= ViewContext.RouteData.Values["Action"] %>

请注意,如果在路由过程中经过了某种重定向,则这些值仍将指向原始请求的控制器/操作,而不是“当前”控制器/操作。
因此,如果对“/Home/Index”的请求执行重定向到“/Admin/Settings”,则上述值将分别为“Home”和“Index”,而不是可能期望或需要的“Admin”和“Settings”。

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