ASP.Net中的Server.MapPath()用法
Server.MapPath()用法
Server.MapPath(string path)作用是返回與Web服務(wù)器上的指定虛擬路徑相對(duì)應(yīng)的物理文件路徑。其參數(shù)path為Web 服務(wù)器的虛擬路徑,返回結(jié)果是與path相對(duì)應(yīng)的物理文件路徑。但有時(shí)參數(shù)并非為虛擬路徑,而是用戶自定義的文件名。
Server.MapPath()的全名是System.Web.HttpContext.Current.Server.MapPath()。有時(shí)在程序調(diào)試時(shí)會(huì)提示“當(dāng)前上下文中不存在名稱“Server””錯(cuò)誤,從而不支持函數(shù)Server.MapPath()的使用。盡管引用了命名空間“using System.Web;”也是無(wú)濟(jì)于事,此時(shí)就需要使用其全名,或者是當(dāng)前使用Server.MapPath()函數(shù)的類(lèi)繼承自System.Web.UI.Page。
Server.MapPath("") :返回當(dāng)前頁(yè)面所在的物理文件路徑
Server.MapPath("/") :返回應(yīng)用程序根目錄所在的物理文件路徑
Server.MapPath("./") :返回當(dāng)前頁(yè)面所在的物理文件路徑
Server.MapPath("../"):返回當(dāng)前頁(yè)面所在的上一級(jí)的物理文件路徑
Server.MapPath("~/"):返回應(yīng)用程序的虛擬目錄(路徑)
Server.MapPath("~"):返回應(yīng)用程序的虛擬目錄(路徑)
說(shuō)明:對(duì)于Server.MapPath()具體返回什么內(nèi)容,在不同的環(huán)境下得到的結(jié)果也許并不相同。
用法:
1.Server.MapPath("/") 應(yīng)用程序根目錄所在的位置 如 C:\Inetpub\wwwroot\
2.Server.MapPath("./") 表示所在頁(yè)面的當(dāng)前目錄 ( 注:等價(jià)于Server.MapPath("") 返回 Server.MapPath("")所在頁(yè)面的物理文件路徑)
3.Server.MapPath("../")表示上一級(jí)目錄
4.Server.MapPath("~/")表示當(dāng)前應(yīng)用級(jí)程序的目錄
如果是根目錄,就是根目錄;
如果是虛擬目錄,就是虛擬目錄所在的位置 如:C:\Inetpub\wwwroot\Example\
注:等效于Server.MapPath("~")。
當(dāng)前的網(wǎng)站目錄為E:\wwwroot
應(yīng)用程序虛擬目錄為E:\wwwroot\company
瀏覽的頁(yè)面路徑為E:\wwwroot\company\news\show.asp
在show.asp頁(yè)面中使用
Server.MapPath("./") 返回路徑為:E:\wwwroot\company\news
Server.MapPath("/") 返回路徑為:E:\wwwroot
Server.MapPath("../") 返回路徑為:E:\wwwroot\company
Server.MapPath("~/") 返回路徑為:E:\wwwroot\company
server.MapPath(request.ServerVariables("Path_Info"))
Request.ServerVariables("Path_Translated")
上面兩種方式返回路徑為 D:\wwwroot\company\news\show.asp
補(bǔ)充:Server.MapPath用法
Server.MapPath的使用方法了,下面記錄一下,以備后用:
總注:Server.MapPath獲得的路徑都是服務(wù)器上的物理路徑,也就是常說(shuō)的絕對(duì)路徑
1、Server.MapPath("/")
注:獲得應(yīng)用程序根目錄所在的位置,如 C:\Inetpub\wwwroot\。
2、Server.MapPath("./")
注:獲得所在頁(yè)面的當(dāng)前目錄,等價(jià)于Server.MapPath("")。
3、Server.MapPath("../")
注:獲得所在頁(yè)面的上級(jí)目錄。
4、Server.MapPath("~/")
注:獲得當(dāng)前應(yīng)用級(jí)程序的目錄,如果是根目錄,就是根目錄,如果是虛擬目錄,就是虛擬目錄所在的位置,如C:\Inetpub\wwwroot\Example\。
到此這篇關(guān)于ASP.Net中的Server.MapPath()用法的文章就介紹到這了,更多相關(guān)Server.MapPath()用法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
ASP.NET 動(dòng)態(tài)寫(xiě)入服務(wù)器端控件
使用Asp.net進(jìn)行開(kāi)發(fā)時(shí),因?yàn)槟承┬枨笤?,需要在?yè)面中動(dòng)態(tài)添加控件。當(dāng)然,這些控件可以是普通的html標(biāo)簽,也可以是Asp.net獨(dú)有的服務(wù)器端控件。2009-04-04ASP.NET Core 集成 React SPA應(yīng)用的步驟
這篇文章主要介紹了ASP.NET Core 集成 React SPA應(yīng)用的步驟,幫助大家更好的理解和學(xué)習(xí)使用.net技術(shù),感興趣的朋友可以了解下2021-04-04在Asp.netCore中使用Attribute來(lái)描述限流的操作步驟
這篇文章主要介紹了在Asp.netCore中使用Attribute來(lái)描述限流的操作步驟,本文給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧2024-12-12ASP.NET Core 2.0 使用支付寶PC網(wǎng)站支付實(shí)現(xiàn)代碼
這篇文章主要介紹了ASP.NET Core 2.0 使用支付寶PC網(wǎng)站支付實(shí)現(xiàn)代碼,需要的朋友可以參考下2017-10-10Forms身份認(rèn)證在IE11下無(wú)法保存Cookie的問(wèn)題
這篇文章主要介紹了Forms身份認(rèn)證在IE11下無(wú)法保存Cookie問(wèn)題的解決方法,需要的朋友可以參考下2014-05-05SqlCommandBuilder如何實(shí)現(xiàn)批量更新
這篇文章主要介紹了SqlCommandBuilder如何實(shí)現(xiàn)批量更新,需要的朋友可以參考下2015-10-10asp.net保存網(wǎng)上圖片到服務(wù)器的實(shí)例
本篇文章主要介紹了asp.net保存網(wǎng)上圖片到服務(wù)器,非常具有實(shí)用價(jià)值,需要的朋友可以參考下。2016-10-10