This article describes how to get the current URL, controller, action in ASP.
first, the URL gets very simple, ASP. NET generic:
"1"Get the full URL (protocol name + domain + virtual directory name + file name + parameter)
String url=request.url.tostring ();
"2"Get the virtual directory name + page name + parameters:
String Url=request.rawurl;
(or string url=request.url.pathandquery;)
"3"Get the virtual directory name + page name:
String Url=httpcontext.current.request.url.absolutepath;
(or string url= HttpContext.Current.Request.Path;)
"4"Get Domain Name:
String Url=httpcontext.current.request.url.host;
"5"Get Parameters:
String Url= HttpContext.Current.Request.Url.Query;
"6"Get Port:
Request.Url.Port
Ii. acquisition of the current Controller and action
RouteData.Route.GetRouteData (this. HttpContext). values["Controller"]
RouteData.Route.GetRouteData (this. HttpContext). Values["Action"]
or
MVC master Page routedata.values["Controller"]
MVC master Page routedata.values["action"]
If you can use it in the view
ViewContext.RouteData.Route.GetRouteData (this. Context). values["Controller"]
ViewContext.RouteData.Route.GetRouteData (this. Context). Values["Action"]
or
viewcontext.routedata.values["Controller"]
Viewcontext.routedata.values["Action"]