我想使用Microsoft.Web.Administration .NET程序集找到IIS网站中的物理路径,相对于网站根目录的路径.
似乎没有一种方法可以做到这一点,但我想知道 - 以下程序是最好的方法吗?:
背风处
我找到了以下代码来获取路径
ServerManager sm = new ServerManager();
sm.Sites["Default Web Site"].Applications["/"].VirtualDirectories["/"].PhysicalPath;
Run Code Online (Sandbox Code Playgroud)
http://forums.iis.net/t/1146686.aspx/1
你说得对,这就是正确的算法。因此,换句话来说,请确保:
1) 找到它匹配的站点(如果您是根据主机名或绑定(IP、端口等)进行查找)。
2) 在站点内查找与剩余 URL 的最长子集匹配的应用程序。
3) 在应用程序中查找与剩余 URL 的最长子集匹配的 VirtualDirectory。
4) 执行 Path.Combine(vdir.PhysicalPath, "URL 的剩余部分用 / 替换为 \")
这就是物理路径。请记住,如今许多 URL 可能是逻辑的(在 MVC 或重写等场景中),因此您可能没有真正的物理路径。
| 归档时间: |
|
| 查看次数: |
2970 次 |
| 最近记录: |