Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 获取相对于当前地址的路径的最佳方法是什么?_.net_Asp.net_Relative Path - Fatal编程技术网

.net 获取相对于当前地址的路径的最佳方法是什么?

.net 获取相对于当前地址的路径的最佳方法是什么?,.net,asp.net,relative-path,.net,Asp.net,Relative Path,假设我有一个位于~/Resources/R1.png 此资源的相对URL因当前地址而异 例如: 如果我在www.foo.com/A/B/C/D.aspx并且www.foo.com/A是包含虚拟目录的根路径,那么相对于~/Resources/R1.png的当前地址的路径是。/../Resources/R1.png 我怎样才能得到这个相对路径 编辑: 我想要一个可以在网页中使用的web路径,而不是服务器路径。获取虚拟路径: string path = Request.ApplicationPath

假设我有一个位于
~/Resources/R1.png
此资源的相对URL因当前地址而异

例如:
如果我在
www.foo.com/A/B/C/D.aspx
并且
www.foo.com/A
是包含虚拟目录的根路径,那么相对于
~/Resources/R1.png
的当前地址的路径是
。/../Resources/R1.png

我怎样才能得到这个相对路径

编辑:

我想要一个可以在网页中使用的web路径,而不是服务器路径。

获取虚拟路径:

string path = Request.ApplicationPath + "/Resources/R1.png";
Request.Path
ResolveUrl(“~/Resources/R1.png”)

其中,“~”用于表示当前页/控件所在的应用程序的根


或者,如果资源位于当前应用程序外部,但仍然位于虚拟目录层次结构中,则可以使用ResolveUrl(“/Resources/R1.png”)

当然,它不会转换为.././xx格式。相反,转换成浏览器可以解释的/xx格式。如果需要,您可以始终使用ResolveClientUrl(“~/Resources/R1.png”)来获取../../xxx格式。我当时正急于离开办公室,只是想说,您如何才能做到这一点,但您是对的。