asp.net中的n種path

來源:互聯網
上載者:User
在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.PhysicalApplicationPath                                      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                                                        Null 參考或者跳轉源頁面地址        

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] + "<br /><br />");
        }

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

相關關鍵詞:
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.