如何使用代码隐藏技术在asp.net中获取当前页面的URL?

时间:2012-02-04 07:34:47

标签: asp.net url

我想获得像abc.aspx这样的页面的Url。我怎样才能使用代码背后的技术。任何想法。?

4 个答案:

答案 0 :(得分:16)

完整详细信息,您可以稍后使用字符串操作进行高级操作:

string url = HttpContext.Current.Request.Url.AbsoluteUri;
// http://localhost:1302/TESTERS/Default6.aspx

string path = HttpContext.Current.Request.Url.AbsolutePath;
// /TESTERS/Default6.aspx

string host = HttpContext.Current.Request.Url.Host;
// localhost

How to get the URL of the current page in C#

答案 1 :(得分:5)

使用Request.RawUrl

  

获取当前请求的原始URL。

答案 2 :(得分:3)

Request.RawUrl属性为您提供当前页面的完全限定网址

答案 3 :(得分:0)

您可以使用以下方式将当前页面网址设置为Canonical标记.... 在这里,我们使用动态主机名设置确切的页面网址。

例如:如果要设置规范标记: http://www.TestWorld.co.uk/about

在下面的代码中,Hostname将动态为 http://www.TestWorld.co.uk/ ,而Request.RawUrl将提供 about 结果,最终我们可以获得纯动态规范网址。 注意:这里Canonical标签将在html页面上动态创建,您无需手动创建。

HtmlLink canonical = new HtmlLink();
var uri = Request.Url;
string hostName = uri.GetLeftPart(UriPartial.Authority);
canonical.Href = hostName + Request.RawUrl.ToString();
canonical.Attributes["rel"] = "canonical";
Page.Header.Controls.Add(canonical);