How to get the URL of the current page in C#
有人能帮我用C语言获取ASP.NET当前工作页的URL吗?
试试这个:
1 2 3 4 5 6 7 8 | 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 |
你可以在时代需要不同的值从获得的URL。
下面的例子显示不同的方式不同的部分URL提取
例子:(样品)。
代码
1 2 3 4 5 6 7 | Response.Write("<br/>" + HttpContext.Current.Request.Url.Host); Response.Write("<br/>" + HttpContext.Current.Request.Url.Authority); Response.Write("<br/>" + HttpContext.Current.Request.Url.Port); Response.Write("<br/>" + HttpContext.Current.Request.Url.AbsolutePath); Response.Write("<br/>" + HttpContext.Current.Request.ApplicationPath); Response.Write("<br/>" + HttpContext.Current.Request.Url.AbsoluteUri); Response.Write("<br/>" + HttpContext.Current.Request.Url.PathAndQuery); |
输出
1 2 3 4 5 6 7 | localhost localhost:60527 60527 /WebSite1test/Default2.aspx /WebSite1test http://localhost:60527/WebSite1test/Default2.aspx?QueryString1=1&QueryString1=2 /WebSite1test/Default2.aspx?QueryString1=1&QueryString2=2 |
你可以复制粘贴上面的代码示例IT &;运行在ASP.NET Web应用与不同的URL的形式。
我建议阅读ASP。NET中你可以使用ASP实例路由路由,然后你不需要使用传统的URL的查询字符串。
http://。/en-US /图书馆/ cc668201 %=% 29.aspx vs.100 28V的
这是我的即时共享作为解决方案的canavar的邮件。
如果你有这样的东西。
1 | "http://localhost:1234/Default.aspx?un=asdf&somethingelse=fdsa" |
或像这样:
1 | "https://www.something.com/index.html?a=123&b=4567" |
只想和你在一个用户的一部分不想在此工作的类型:
1 2 | String strPathAndQuery = HttpContext.Current.Request.Url.PathAndQuery; String strUrl = HttpContext.Current.Request.Url.AbsoluteUri.Replace(strPathAndQuery,"/"); |
这将导致论文:
1 2 | "http://localhost:1234/" "https://www.something.com/" |
如果你只是想"http://部分之间的削减和第一
1 | string url = Request.Url.Host; |
如果没有回报stackoverflow.com所谓从本页
这是一个完整的击穿
在request.rawurl想给当前页的内容它给你确切的所需的路径
使用
如果你要
1 | localhost:2806 |
从
1 | http://localhost:2806/Pages/ |
然后使用:
1 | HttpContext.Current.Request.Url.Authority |
一个尖端的人谁需要在Global.asax文件路径或URL;
如果你需要运行这个应用_ >在Global.asax和你应用程序池的启动模式是集成然后你将收到下面的错误:
Request is not available in this context exception in
Application_Start.
在这样的情况:你需要使用本
System.Web.HttpRuntime.AppDomainAppVirtualPath
我们想帮助他人。
我降落在本页搜索,但这不是我所要找的地方。张贴在这里的情况是别人找我在本页的土地的价值。
有两个这样做的方式,如果你有一个字符串值。
NET的方式:
一个canavar",但你可以instantiate新URI对象
1 2 |
这意味着你可以使用同样的方法。
1 2 3 4 5 | string url = uri.AbsoluteUri; // http://localhost:1302/TESTERS/Default6.aspx string host = uri.host // localhost |
正则表达式的方式:
作为部分的URL(正则表达式)
我想它足以返回绝对路径。
1 | Path.GetFileName( Request.Url.AbsolutePath ) |
使用System.IO;