Server.MapPath是使用

本文导读:Server.MapPath()的全名是System.Web.HttpContext.Current.Server.MapPath()。作用是返回与Web服务器上的指定虚拟路径相对应的物理文件路径。其参数path为Web 服务器的虚拟路径,返回结果是与path相对应的物理文件路径。但有时参数并非为虚拟路径,而是用户自定义的文件名。

Server.MapPath方法作用

MapPath方法用来返回与Web服务器上的指定虚拟路径相对应的物理文件路径。

语法
Server.MapPath(path);

参数

path表示Web服务器上的虚拟路径,如果path值为空,则该方法返回包含当前应用程序的完整物理路径。

注意事项

Server.MapPath()有时在程序调试时会提示“当前上下文中不存在名称“Server””错误,从而不支持函数Server.MapPath()的使用。尽管引用了命名空间“using System.Web;”也是无济于事,此时就需要使用其全名,或者是当前使用Server.MapPath()函数的类继承自System.Web.UI.Page。

Server.MapPath()应用

假设当前的网站目录为E:\wwwroot 应用程序虚拟目录为E:\wwwroot\company 浏览的页面路径为E:\wwwroot\company\news\ 下面的一个 aspx页面。

在该页面中使用

Server.MapPath("") :返回当前页面所在的物理文件路径:E:\wwwroot\company\news

Server.MapPath("/") :返回应用程序根目录所在的物理文件路径:E:\wwwroot

Server.MapPath("./") :返回当前页面所在的物理文件路径:E:\wwwroot\company\news

Server.MapPath("../"):返回当前页面所在的上一级的物理文件路径:E:\wwwroot\company

Server.MapPath("~/"):返回应用程序的虚拟目录(路径):E:\wwwroot\company

Server.MapPath("~"):返回应用程序的虚拟目录(路径):E:\wwwroot\company

ASP.NET中Server.MapPath() 和 Request.MapPath()使用区别:

Server.MapPath(string) :是将相对于当前调用文件的文件(或目录)映射为物理路径;

Request.MapPath(string) :是将string虚拟路径映射为物理路径(asp中Request无此方法)

Server.MapPath(string) 中string 可以用“../”方式引用父目录,甚至可以将此目录跳到整个WEB目录外,如:C:\WWWROOT

目录为WEB根目录,在根目录文件中调用此Server.MapPath("../脚本文件"),则可以调用WEB目录外的脚本、资源等。

Request.MapPath(string) 中的string为虚拟目录,只能相对WEB虚拟目录形式的,也不允许"../"方式调用,只能是"/","/xx"等字符串

参考文档:http://www.studyofnet.com/news/184.html

原文地址:https://www.cnblogs.com/UncleDrew/p/10197132.html

时间: 2024-10-10 16:11:04

Server.MapPath是使用的相关文章

Server.MapPath()

./当前目录/网站主目录../上层目录~/网站虚拟目录如果当前的网站目录为E:\wwwroot   应用程序虚拟目录为E:\wwwroot\company 浏览的页面路径为E:\wwwroot\company\news\show.asp在show.asp页面中使用Server.MapPath("./")   返回路径为:E:\wwwroot\company\newsServer.MapPath("/")    返回路径为:E:\wwwrootServer.MapPa

Server.MapPath查询路径那几件事

主要总结Server.MapPath 这个方法的使用以及使用的场景,不是什么时候都适合使用: 1.实现功能: Server.MapPath能够获取指定URL相对服务器的物理路径,在IIS服务端,能够根据文件名来获取该文件的物理路径: 2.存在命令空间: System.Web.HttpContext.Current.Server.MapPath 以及System.web.MVC.Control.Server.Mapth; 3.使用情况: 既然是System.Web.HttpContent 也及时表

asp中Server.MapPath的使用方法

老是忘记Server.MapPath的使用方法了,下面记录一下,以备后用: 总注:Server.MapPath获得的路径都是服务器上的物理路径,也就是常说的绝对路径 1.Server.MapPath("/") 注:获得应用程序根目录所在的位置,如 C:\Inetpub\wwwroot\. 2.Server.MapPath("./") 注:获得所在页面的当前目录,等价于Server.MapPath(""). 3.Server.MapPath(&qu

asp.net server.mappath使用

1.Server.MapPath("/") 应用程序根目录所在的位置 如 C:\Inetpub\wwwroot\ 2.Server.MapPath("./") 表示所在页面的当前目录 注:等价于Server.MapPath("") 返回 Server.MapPath("") 所在页面的物理文件路径 3.Server.MapPath("../")表示上一级目录 4.Server.MapPath("~

转:Server.MapPath相关

如果你从Page类继承的类中执行这条语句,才可以简单地使用 DataBase = Server.MapPath("data.mdb");否则写全命名空间:System.Web.HttpContext.Current.Server.MapPath(); 总注:Server.MapPath获得的路径都是服务器上的物理路径,也就是常说的绝对路径1.Server.MapPath("/")注:获得应用程序根目录所在的位置,如 C:\Inetpub\wwwroot\.2.Ser

asp于Server.MapPath用法

总是忘记Server.MapPath的用法,以下记录了,以后使用: 总注:Server.MapPath获得的路径都是server上的物理路径,也就是常说的绝对路径 1.Server.MapPath("/") 注:获得应用程序根文件夹所在的位置.如 C:\Inetpub\wwwroot\. 2.Server.MapPath("./") 注:获得所在页面的当前文件夹,等价于Server.MapPath(""). 3.Server.MapPath(&q

Server.mappath用法

1.Server.MapPath ("/") 应用程序根目录所在的位置 如 C:\qq\qqroot\ 2.Server.MapPath ("./") 表示所在页面的当前目录 注:等价于Server.MapPath ("") 返回 Server.MapPath ("")所在页面的物理文件路径 3.Server.MapPath ("../")表示上一级目录 4.Server.MapPath ("~/

Server.MapPath()目录详解

最近在做相关的开发,碰到了Server.MapPath(),顺便来温习一下 Server.MapPath()获取网站的目录详解 ./当前目录 /网站主目录 ../上层目录 ~/网站虚拟目录 如果当前的网站目录为E:\www123,应用程序虚拟目录为E:\www123\wlj ,浏览的页面路径为E:\www123\wlj\haha\heihei.asp. 例子:在heihei.asp页面中的具体使用如下 Server.MapPath("./")   返回路径为:E:\www123\wlj

Server.MapPath 的使用方法

用法: 1.Server.MapPath ("/") 应用程序根目录所在的位置 如 C:\Inetpub\wwwroot\ 2.Server.MapPath ("./") 表示所在页面的当前目录 注:等价于Server.MapPath ("") 返回 Server.MapPath ("")所在页面的物理文件路径 3.Server.MapPath ("../")表示上一级目录 4.Server.MapPath

浅谈Server.MapPath和Request.PhysicalApplicationPath

很多人对它们都不陌生,在众多的WEB程序中,使用Server.MapPath和Request.PhysicalApplicationPath来操作目录/文件的几率参半,我曾经也经常混用,然而时间久了.发现Request.PhysicalApplicationPath有点“麻烦”?其实在一般的应用程序中,感觉不到两者的区别,而在一些存在“虚拟目录”.存在多级子目录.需要虚拟目录相互文件操作的站点中,就可以知道它们的区别了.我的总结如下: 1.相对当前路径的文件操作: 可以使用Server.MapP