Is there a way in a view in ASP.Net MVC to get the names of the controller and actien method that are using the view?
Asked
Active
Viewed 3,907 times
2 Answers
46
Try this:
<%= ViewContext.RouteData.Values["Controller"] %>
<%= ViewContext.RouteData.Values["Action"] %>

eu-ge-ne
- 28,023
- 6
- 71
- 62
-
Those names will reflect the casing of request url. What you do with them should not be case-sensitive. (I fell in that trap.) – Frédéric Dec 21 '15 at 15:23
5
<%= ViewContext.RouteData.Values["Controller"] %>
<%= ViewContext.RouteData.Values["Action"] %>
Be aware that if along the way, your routing has passed through a redirect of some kind, then the those values will still refer to the original requested controller/action, not the "current" one.
So if a request to "/Home/Index" performs a redirect to "/Admin/Settings", then the above values will be "Home" and "Index" respectively and not "Admin" and "Settings" as perhaps may be expected or desired.

anewcomer
- 975
- 11
- 6