MVC3路由 - 如何在控制器内部获取URL

Man*_*ton 4 model-view-controller asp.net-mvc routing asp.net-mvc-3

有人能告诉我当我在控制器中时如何获取用于调用路由的URL?这看起来很简单,但我找不到任何关于如何做的参考.如果你需要一个例子我可以解释更多..以前我问路线问题,有人告诉我如何检查哪条路线得到满足.这次我的需求有点不同.

谢谢,

曼迪

ale*_*exn 6

由于您有对Controller的Request属性的引用,您可以这样做:

var url = Request.Url.ToString();
Run Code Online (Sandbox Code Playgroud)


3Da*_*ave 6

使用Request对象的Url属性.

public ActionResult MyAction()
{
    var url = Request.Url;

    /// .....

    return View();    
}
Run Code Online (Sandbox Code Playgroud)

这将返回一个Uri对象,包含您需要的一切.

您可能还对控制器的RouteData属性感兴趣,该属性提供有关已解析路由的更多详细信息.