如何在ASP.NET MVC中获取当前虚拟路径?

Ron*_*rby 4 .net asp.net asp.net-mvc

如何从asp.net mvc视图中获取当前路径(url)?

如果没有办法在视图中获取它,如何在控制器中获取它以便将其传递给视图?

编辑

我不想要网址的协议和主机部分.

tua*_*nvt 6

这将返回视图中的url:

'<%=Url.RouteUrl(ViewContext.RouteData.Values)%>
Run Code Online (Sandbox Code Playgroud)


Fil*_*ges 5

这取决于您需要什么路径,因为有很多选择:

// given the url: http://mydomain/approot/my-route/?bar=baz

@Request.Url.PathAndQuery
// value: "/approot/my-route?bar=baz"
@Request.Path
@Request.CurrentExecutionFilePath
// value: "/approot/my-route"
@Request.ApplicationPath
// value: "/approot"
@Request.AppRelativeCurrentExecutionFilePath
// value: "~/my-route"
@Request.AppRelativeCurrentExecutionFilePath.Substring(2)
// value: "my-route"
Run Code Online (Sandbox Code Playgroud)