ASP.NET MVC从URL获取Route值

时间:2011-02-14 15:32:29

标签: asp.net-mvc routing

我想弄清楚控制器操作中UrlReferrer的路由值是什么。

我无法弄清楚MVC管道中的哪个部分将传入的URL转换为RouteValues,我正在努力实现的目标接近于此。

1 个答案:

答案 0 :(得分:6)

您需要使用模拟RouteTable.Routes.GetRouteData来致电HttpContextBase,并在其Request中返回您的网址。

使用请求AppRelativeCurrentExecutionFilePath在内部匹配路由 但是,此功能未公开,因此您需要传递HttpContextBase

您需要创建一个HttpContextBase类,在其请求属性中返回HttpRequestBase个实例 HttpRequestBase类需要在~/属性中以AppRelativeCurrentExecutionFilePath开头返回您的路径。

您不需要实现任何其他属性,除非它们被IRouteConstraint使用。

有人已写过:Creating a RouteData instance from a URL