是否可以从URL获取控制器,操作和routeValues(基于Global.asax路由)?

Rop*_*tah 2 debugging asp.net-mvc routes

我有一个URL.有可能以某种方式获得控制器和动作名称以及路由值吗?(通常由.NET MVC框架基于global.asax中的定义生成)

Eil*_*lon 9

您想在何时何地获取价值?

在您的代码中,您可以致电:

HttpContextBase context = new HttpContextWrapper(HttpContext.Current);
RouteData rd = RouteTable.Routes.GetRouteData(context);

if (rd != null) {
    string controllerName = rd.GetRequiredString("controller");
    string actionName = rd.GetRequiredString("action");
}
Run Code Online (Sandbox Code Playgroud)

请注意,这仅适用于您的应用程序代码.绝对没有办法获得有关其他网站和应用程序的信息.