解决方法
这样的控制器:
string controller = RouteData.GetrequiredString("controller");
并采取行动:
string action = RouteData.GetrequiredString("action");
例如,您可以在基本控制器类中使用它:
public class YouControllerBase: Controller { protected override void Execute(System.Web.Routing.RequestContext requestContext) { string controller = requestContext.RouteData.GetrequiredString("controller"); string action = requestContext.RouteData.GetrequiredString("action"); } }
或者在global.asax中使用它
protected void Application_BeginRequest(object sender,EventArgs e) { RouteData routeData = RouteTable.Routes.GetRouteData( new HttpContextwrapper(HttpContext.Current)); var action = routeData.GetrequiredString("action"); }