最近在网站程序编写过程中遇到了需要获取网站目录实际路径的功能,如下图所示:
上述代码是为了实现:从数据库中挑选符合条件的记录进行循环,先判断这条记录是否存在对应的图片(png)文件,是的话在site_image字段中写入图片的路径。
其中,“判断是否存在对应的图片”,这个功能需要获取到网站在服务器中的真实路径值,就需要用到Server.MapPath这个方法进行提取。如上图所示,本例中,用Server.MapPath("/")来获取该网站根目录的实际路径,比如:E:/www/site/,然后通过&符号链接以网站根目录为开始的图片文件路径。
以上只是Server.MapPath的一种获取路径的方法,经查阅资料,设置不同的参数可以获得不同的服务器实际路径:
以下资料的来源:http://www.cnblogs.com/sunliyuan/p/5959002.html
总注:Server.MapPath获得的路径都是服务器上的物理路径,也就是常说的绝对路径
1、Server.MapPath("/")
注:获得应用程序根目录所在的位置,如 C:\Inetpub\wwwroot\。
2、Server.MapPath("./")
注:获得所在页面的当前目录,等价于Server.MapPath("")。
3、Server.MapPath("../")
注:获得所在页面的上级目录。
4、Server.MapPath("~/")
注:获得当前应用级程序的目录,如果是根目录,就是根目录,如果是虚拟目录,就是虚拟目录所在的位置,如C:\Inetpub\wwwroot\Example\。