为服务器端代码指定相对路径

本文关键字:相对 路径 服务器端 代码 | 更新日期: 2023-09-27 18:06:37

在HTML中,我知道我可以指定相对路径,例如:

<a href="~/temp/Somecontent.xxx" />

我想为我的服务器端代码设置相对路径。例如:

File.Exists("../myBusinessLibrary/Bin/Debug/myBusinessLibrary.dll");//where this is a library that supports the web project

找不到文件。我看了看Environment.CurrentDirectory,得到:

"C:''Program Files (x86)''IIS Express"

我不认为我的程序集被复制到这个位置。是否有一种方法来设置与服务器端代码工作的相对路径?

为服务器端代码指定相对路径

您可以使用以下代码

HttpContext.Current.Server.MapPath("relativepath goes here")

看一下Server。MapPath(字符串relativePath):

http://msdn.microsoft.com/en-us/library/system.web.httpserverutility.mappath (v = vs.100) . aspx

这个方法将一个相对路径映射到一个物理路径,这个物理路径可以在File.Exists()方法中使用。

您可以使用Server.MapPath

var path = Server.MapPath("/myBusinessLibrary/Bin/Debug/myBusinessLibrary.dll");
File.Exists(path);

您可以尝试使用服务器。地图路径,看看能找到什么。这里是它的信息链接:

http://msdn.microsoft.com/en-us/library/ms524632 (v =应用程序). aspx