2017-04-11 86 views
0

我一直在研究this excellent Stack postServer.MapPath(),我找不到任何东西,从我目前的位置需要我2级。Server.MapPath()不能升级2级?

Server.MapPath("./"); // this works - current path 
Server.MapPath("../"); // this works - parent path 
Server.MapPath("/"); // this works - virtual root path (2 levels HIGHER than I need) 
Server.MapPath(".../"); // This fails 

有没有办法上升2级? (这将是父文件夹的父代。)

是的,我可以通过转到虚拟根目录然后解析/合并来完成此操作,但这看起来很骇人听闻。寻找更优雅或规范的东西。

+0

难道不是'../../'? –

回答

3

在windows中没有.../路径。

  • ./代表当前目录
  • ../意味着上述

注意一层:你能想到的.数量是水平的量,但事实并非如此。

2以上级别为../../,3级别../../../等。

3

..上了文件夹,所以../../会上升两层,依此类推。

请注意,这不会让您离开您网站的根文件夹:如果页面是“/foo/bar.aspx”,尝试映射“../ ..”将失败,如果您的网站位于根目录。