转载 ASP.NET中如何取得Request URL的各个部分

转载原地址

http://blog.miniasp.com/post/2008/02/10/How-Do-I-Get-Paths-and-URL-fragments-from-the-HttpRequest-object.aspx

網址:http://localhost:1897/News/Press/Content.aspx/123?id=1#toc
Request.ApplicationPath /
Request.PhysicalPath D:\Projects\Solution\web\News\Press\Content.aspx
System.IO.Path.GetDirectoryName(Request.PhysicalPath) D:\Projects\Solution\web\News\Press
Request.PhysicalApplicationPath D:\Projects\Solution\web\
System.IO.Path.GetFileName(Request.PhysicalPath) Content.aspx
Request.CurrentExecutionFilePath /News/Press/Content.aspx
Request.FilePath /News/Press/Content.aspx
Request.Path /News/Press/Content.aspx/123
Request.RawUrl /News/Press/Content.aspx/123?id=1
Request.Url.AbsolutePath /News/Press/Content.aspx/123
Request.Url.AbsoluteUri http://localhost:1897/News/Press/Content.aspx/123?id=1
Request.Url.Scheme http
Request.Url.Host localhost
Request.Url.Port 1897
Request.Url.Authority localhost:1897
Request.Url.LocalPath /News/Press/Content.aspx/123
Request.PathInfo /123
Request.Url.PathAndQuery /News/Press/Content.aspx/123?id=1
Request.Url.Query ?id=1
Request.Url.Fragment  
Request.Url.Segments /
News/
Press/
Content.aspx/
123

以下部分转载出处:  http://www.cnblogs.com/aspnetjia/p/5222744.html (http://www.aspnetjia.com)

假设当前页完整地址是:http://www.test.com/aaa/bbb.aspx?id=5&name=kelli

"http://"是协议名

"www.test.com"是域名

"aaa"是站点名

"bbb.aspx"是页面名(文件名)

"id=5&name=kelli"是参数

【1】获取 完整url (协议名+域名+站点名+文件名+参数)

string url=Request.Url.ToString();

url= http://www.test.com/aaa/bbb.aspx?id=5&name=kelli

【2】获取 站点名+页面名+参数:

string url=Request.RawUrl;

(或 string url=Request.Url.PathAndQuery;)

url= /aaa/bbb.aspx?id=5&name=kelli

【3】获取 站点名+页面名:

string url=HttpContext.Current.Request.Url.AbsolutePath;

(或 string url= HttpContext.Current.Request.Path;)

url= aaa/bbb.aspx

【4】获取 域名:

string url=HttpContext.Current.Request.Url.Host;

url= www.test.com

【5】获取 参数:

string url= HttpContext.Current.Request.Url.Query;

url= ?id=5&name=kelli

时间: 2024-11-02 16:44:33

转载 ASP.NET中如何取得Request URL的各个部分的相关文章

[转载] asp.net中,<%#%>,<%=%>和<%%>分别是什么意思,有什么区别

在asp.net中经常出现包含这种形式<%%>的html代码,总的来说包含下面这样几种格式: 一. <%%> 这种格式实际上就是和asp的用法一样的,只是asp中里面是vbscript或者javascript代码,而在asp.net中是.net平台下支持的语言. 特别注意:服务器控件中不能有<%%>语法 (这里用C#代码) <% int a = 2; int b = 3; int c = a + b; Response.Write(c); %>二. <

[转载]ASP.NET中IsPostBack详解

1.IsPostBack介绍Page.IsPostBack是一个标志:当前请求是否第一次打开. 调用方法为:Page.IsPostBack或者IsPostBack或者this.IsPostBack或者this.Page.IsPostBack,它们都等价. 1)当通过IE的地址栏等方式打开一个URL时是第一次打开, 当通过页面的提交按钮或能引起提交的按钮以POST的方式提交的服务器时,页面就不再是第一次打开了.(每点击一次按钮,都是一次加载) 2)IsPostBack只有在第一次打开的时候是fal

转载 asp.net中ViewState的用法详解

转载原地址: http://www.jb51.net/article/73662.htm 在web窗体控件设置为runat = "server",这个控件会被附加一个隐藏的属性_ViewState,_ViewState存放了所有控件在ViewState中的状态值.ViewState是一个名称/值的对象集合.当请求某个页面时,ASP.NET会把所有控件的状态序列化成一个字符串,然后作为窗体的隐藏属性送到客户端,当客户端吧页面回传时,ASP.NET分析回传的窗体属性,并赋给控件对应的值.

ASP.NET4中不要相信Request.Browser.Cookies,Form验证要用UseCookies

从ASP.NET 3.5升级至ASP.NET4之后,遇到三种登录后不能保存cookie的情况(升级前一切正常): 1. 遨游3在极速模式下(默认模式). 2. FireFox中修改了UserAgent. 3. 诺基亚手机自带浏览器或者UCWeb浏览器访问博客园手机版(m.cnblogs.com). 今天终于把罪魁祸首给揪出来了,它就是Request.Browser.Cookies. 如果你在程序中使用Form验证并使用cookie保存用户的登录状态,请切记:在<authentication mo

[转载]Asp.Net中时间格式化的几种方法 – Rancho2013 – 博客园

1. 数据控件绑定时格式化日期方法:<asp:BoundColumn DataField=”AddTime” HeaderText=”添加时间” DataFormatString=”{0:yyyy-MM-dd HH:mm}></asp:BoundColumn><asp:BoundField DataField=”AddTime” HeaderText=”添加时间” DataFormatString=”{0:yyyy-MM-dd}” /> 2. 用DataBinder.E

Asp.net中Request.Url的各个属性对应的意义介绍

转:http://www.jb51.net/article/30254.htm 虚拟目录的路径: Request.ApplicationPath 站点的物理路径(完整路径): Request.PhysicalPath 站点物理路径的目录: System.IO.Path.GetDirectoryName(Request.PhysicalPath) 站点物理路径的目录: Request.PhysicalApplicationPath 当前页面的文件名: System.IO.Path.GetFileN

ASP.NET中Request.RawUrl、Request.Url的区别

如果访问的地址是: http://h.keleyi.com/guestbook/addmessage.aspx?key=hovertree%3C&n=myslider#zonemenu 那么 Request.Url.ToString() 的值是:http://h.keleyi.com/guestbook/addmessage.aspx?key=hovertree<&n=myslider Request.RawUrl.ToString() 的值是:/guestbook/addmessa

ASP.NET 中执行 URL 重写

具体实现步骤(其中的一种实现方法): 一.下载相关的DLL(ActionlessForm.dll和UrlRewriter.dll) http://download.csdn.net/detail/yingwanghbx/4510059 二.在项目中引用那两个DLL文件 右击项目,点击Add Reference,选择Browse,然后选择相应的DLL,点击OK即可. 三.添加browser文件 1.右击项目,点击Add-New Item,选择Browser File,取个有意义的名字.在生成的*.

ASP.NET中的Request、Response、Server对象

Request对象 Response.Write(Request.ApplicationPath) //应用根路径Request.AppRelativeCurrentExecutionFilePath //当前执行请求相对于应用根目录的虚拟路径,以-开头Request.PhysicalApplicationPath //当前应用的物理路径,如 D:\TEST\WEBRequest.PhysicalPath //当前请求的物理路径,如 D:\TEST\WEB\a.aspxRequest.RawUr