查下使用Server.MapPath进行虚拟目录映射的问题,我进行了一把试验:
试验条件:w1网站物理路径为F:\temp\代码示例\WebSite1,默认网站的物理路径C:\inetpub\wwwroot,对于w1网站的某网页调用 Server.MapPath方法。
试验结果:
1 Server.MapPath("") w1返回F:\temp\代码示例\WebSite1 ,即w1网站物理路径
4 Server.MapPath("/Bin") w1返回C:\inetpub\wwwroot\Bin返回的是默认网站物理路径+/Bin。
总结下:参数是以斜杠开头( / 或 \ )或者../ 或 ..\ 等开头,那么首先取默认网站的物理路径,即C:\Inetpub\wwwroot,再加上传入的传入的路径参数;如果不是以这类符号开头的话,就是取当前网站的物理路径,即F:\temp\代码示例\WebSite1 ,再加上传入的路径参数。