2010-01-10 86 views
6

为了得到当前网页的网址,我通常会做这样的事情:asp.net Server.Transfer之后如何获取当前页面的路径?

string path = Request.Path; 

如果我这样做一个Server.Transfer的后然后我得到的转印纸做网页的路径。我怎样才能得到它的当前页面?

例如:

在Page1.aspx的我做Server.Transfer的( “Page2.aspx”)
在Page2.aspx Request的返回/Page1.aspx而不是/Page2.aspx

我想获取/Page2.aspx。我怎么才能得到它?

+0

你的意思'Server.Transfer'? – SLaks 2010-01-10 14:14:31

+0

确切的。我编辑了这个问题。 – Anthony 2010-01-10 14:27:11

回答

13

您正在寻找Request.CurrentExecutionFilePath属性。

+0

似乎要做的伎俩。谢谢。 – Anthony 2010-01-10 14:28:02

+0

似乎没有。 – Serge 2014-03-26 14:37:49

+0

您也可以使用Request.QueryString获取当前页面的查询字符串,因此完整URL将为 Request.CurrentExecutionFilePath +“?” + Request.QueryString.ToString() – Rayyan 2018-01-29 05:32:53

0

当您使用Server.Transfer时,尽管浏览器上的URL不会更改,但请求引用URL确实如此。所以,你可以使用UrlReferrer属性的Request。 UrlReferrer获取有关链接到当前URL的客户端先前请求的URL的信息。

例如

string myContextBrowserPath = Context.Request.UrlReferrer.AbsolutePath 
相关问题