通过 ASP.Net 获取应用程序 url
Get application url with ASP.Net
我需要在会话过期时重定向到我的应用程序的 CommonPage.aspx
页面。
我的申请 url 类似于 http://Name_IP/applicationname/FolderName/Home.aspx
从上面url我需要重定向到http://Name_IP/applicationname/commonpage.aspx
我使用下面的代码重定向
"http://localhost://" + Request.Url.Port.ToString() + "//applicationname/commonpage.aspx"
以上代码将在本地主机上运行。但是部署后它不起作用。
怎么做?请推荐
如何用 Name_IP 替换本地主机?
Request.Url
包含来自请求的完整 URL。看看 Host
属性.
您可以使用
获取主机名,包括端口
Request.Url.GetLeftPart(UriPartial.Authority)
你可以像这样使用
var url = String.Format(
"{0}/{1}"
Request.Url.GetLeftPart(UriPartial.Authority),
"applicationname/commonpage.aspx")
这会产生类似
的东西
http://foo.bar:8080/applicationname/commonpage.aspx
一个好的方法是创建一个新的 Uri
:
var uri = new Uri(Request.Url, "applicationname/commonpage.aspx");
这将 return 一个 Uri
的值是
http://foo.bar:8080/applicationname/commonpage.aspx
我需要在会话过期时重定向到我的应用程序的 CommonPage.aspx
页面。
我的申请 url 类似于 http://Name_IP/applicationname/FolderName/Home.aspx
从上面url我需要重定向到http://Name_IP/applicationname/commonpage.aspx
我使用下面的代码重定向
"http://localhost://" + Request.Url.Port.ToString() + "//applicationname/commonpage.aspx"
以上代码将在本地主机上运行。但是部署后它不起作用。 怎么做?请推荐
如何用 Name_IP 替换本地主机?
Request.Url
包含来自请求的完整 URL。看看 Host
属性.
您可以使用
获取主机名,包括端口Request.Url.GetLeftPart(UriPartial.Authority)
你可以像这样使用
var url = String.Format(
"{0}/{1}"
Request.Url.GetLeftPart(UriPartial.Authority),
"applicationname/commonpage.aspx")
这会产生类似
的东西http://foo.bar:8080/applicationname/commonpage.aspx
一个好的方法是创建一个新的 Uri
:
var uri = new Uri(Request.Url, "applicationname/commonpage.aspx");
这将 return 一个 Uri
的值是
http://foo.bar:8080/applicationname/commonpage.aspx