当我在控制器中时,有人能告诉我如何获取用于调用路线的URL吗?这看起来很简单,但我找不到任何关于如何做的参考。如果你需要一个例子我可以解释更多..以前我问路线问题,有人告诉我如何检查哪条路线得到满足。这次我的需求有点不同。
谢谢,
曼迪
答案 0 :(得分:6)
由于您有对Controller的Request属性的引用,您可以这样做:
var url = Request.Url.ToString();
答案 1 :(得分:6)
Use the Url property of the Request object
public ActionResult MyAction()
{
var url = Request.Url;
/// .....
return View();
}
That will return a Uri object with everything you need。
您可能还对控制器的RouteData属性感兴趣,该属性提供有关已解析路由的更多详细信息。
答案 2 :(得分:1)
我会使用RouteData.Values属性而不是Request属性。在单元测试场景中,Request属性可能为null。
答案 3 :(得分:0)
您可以使用路由调试器查看哪个url与您的控制器/操作匹配