在代码隐藏中获取ASP.Net页面的URL

时间:2020-03-06 14:23:05  来源:igfitidea点击:

我有一个ASP.Net页面,该页面将托管在几个不同的服务器上,我想获取页面的URL(甚至更好:页面托管的站点)作为字符串,以在后面的代码中使用。有任何想法吗?

解决方案

Request.Url.Host

用这个:

Request.Url.AbsoluteUri

这将为我们提供完整的路径(包括http:// ...)

我们想要服务器名称吗?还是主机名?

Request.Url.Host ala Stephen

Dns.GetHostName服务器名称

Request.Url可以访问我们所需要的关于请求页面的大多数信息。

如果只希望请求的方案和权限部分(协议,主机和端口)使用

Request.Url.GetLeftPart(UriPartial.Authority)

我遇到了同样的问题,到目前为止,我发现:

new Uri(Request.Url,Request.ApplicationPath)

或者

Request.Url.GetLeftPart(UriPartial.Authority)+Request.ApplicationPath

Request.Url.GetLeftPart(UriPartial.Authority) + Request.FilePath + "?theme=blue";

这将为我们提供到我们所在页面的完整路径。我添加了查询字符串。

我在用

Request.Url.GetLeftPart(UriPartial.Authority) +
        VirtualPathUtility.ToAbsolute("~/")