解读ASP.NET常用路径(path)获取方法对照表_.Net教程

编辑Tag赚U币
教程Tag:暂无Tag,欢迎添加,赚取U币!

推荐:解析gridview超出长度用..代替,提示显示详细信息
for(inti=0;ie.Row.Cells.Count;i++)//获取总列数 { //如果是数据行则添加title if(e.Row.RowType==DataControlRowType.DataRow) {//设置title为gridview的head的text e.Row.Cells[i].Attributes.Add(title,GrvNew.HeaderRow.Cells[i].Text.ToString().Trim

在web服务器端开发中经常会遇到各种不同形式的path,而且经常记不清楚如何获取到某种特定格式,今天抽了点时间把常用的path获取方法与格式做了一个简单的对照表,以备日后查用。
Request获取的信息
Request.AppRelativeCurrentExecutionFilePath         ~/SysOption/BillingSetup1.aspx 
Request.ApplicationPath                                     /
Request.CurrentExecutionFilePath                /SysOption/BillingSetup1.aspx 
Request.FilePath                                           /SysOption/BillingSetup1.aspx 
Request.Path                                                /SysOption/BillingSetup1.aspx 
Request.PathInfo                                           什么都没有(待测其他用法)
Request.PhysicalApplicationPat            D:\VssWorkFolder\British_School_MIS\src\WebSite\ 
Request.PhysicalPath                        D:\VssWorkFolder\British_School_MIS\src\WebSite\SysOption\BillingSetup1.aspx 
Request.UserHostAddress                                 192.168.1.6 
Request.UserHostName                                      192.168.1.6 
Request.Url.ToString()                       http://192.168.1.6/SysOption/BillingSetup1.aspx?x=d 
Request.UrlReferrer                          空引用或者跳转源页面地址         

Request.ServerVariables集合中获取到的相关信息:
左列是服务器变量名,右侧是值,值是通过Request.ServerVariables[服务器变量名]获取的
APPL_MD_PATH : /LM/W3SVC/894523/Root
APPL_PHYSICAL_PATH : D:\VssWorkFolder\British_School_MIS\src\WebSite\
INSTANCE_META_PATH : /LM/W3SVC/894523
LOCAL_ADDR : 192.168.1.6
PATH_INFO : /SysOption/BillingSetup1.aspx
PATH_TRANSLATED : D:\VssWorkFolder\British_School_MIS\src\WebSite\SysOption\BillingSetup1.aspx
REMOTE_ADDR : 192.168.1.6
REMOTE_HOST : 192.168.1.6
SCRIPT_NAME : /SysOption/BillingSetup1.aspx
SERVER_NAME : 192.168.1.6
URL : /SysOption/BillingSetup1.aspx

Request.ServerVariables是一个很强大的工具,可以帮助我们获取很多client和web宿主的信息,有兴趣的朋友可以通过以下代码看看它到底包含什么信息

        foreach (string s in Request.ServerVariables)
        {
            Response.Write(s + "  :  " + Request.ServerVariables[s] + "");
        }

path转换
1.转换为服务器端路径(Server.MapPath)
web服务器端开发设计一个有趣的问题就是,地址转换。比如http地址/images/a.txt,如果你想在服务器端通过io读取这个文件,就得有这个文件的“本机地址(形如c:\windows\system32\xx.dll)”,这时Server.MapPath就很有用了
Response.Write(Request.MapPath(Request.Path));        输出为 D:\VssWorkFolder\British_School_MIS\src\WebSite\SysOption\BillingSetup1.aspx
2.转换为http地址(Page.ResolveClientUrl Page.ResolveUrl)
Response.Write(Page.ResolveClientUrl("~/a/a.jpg"));      输出为 ../a/a.jpg 
Response.Write(Page.ResolveUrl("~/a/a.jpg"));              输出为 /a/a.jpg

分享:.NET教程之--asp.net初学者项目开发疑难小结
学asp.net不久,做了一个项目,遇到很多问题,在此 小结 一下,这些都是项目中经常遇到的问题,我搜集网上的解决方案,做了一个小的总结.也让遇到同样问题的IT学子有些帮助. 1、解决了framework2.0架构下子页内容引用updatepanel导致ajax控件警告为:未知元素,代码

来源:模板无忧//所属分类:.Net教程/更新时间:2010-01-30
相关.Net教程