如何在应用程序中提供虚拟目录路径

Posted

技术标签:

【中文标题】如何在应用程序中提供虚拟目录路径【英文标题】:How to give virtual directory path in application 【发布时间】:2021-09-10 10:44:47 【问题描述】:

我在 IIS 中的应用程序文件夹下有一个虚拟目录,例如

MyApplication/VirtualDirectory 

我希望在我的应用程序中访问这个 VirtualDirectory,我尝试过的事情是:

string[] imageDir = null;
string sourceFilePath = "Myapplication/VirtualDirectory"; 
/* ./Myapplication/VirtualDirectory
~/Myapplication/VirtualDirectory
\Myapplication/VirtualDirectory
.\Myapplication/VirtualDirectory
~\Myapplication/VirtualDirectory*/
imageDir = Directory.GetDirectories(sourcePath);

如果需要任何其他数据,请告诉我,谢谢。

【问题讨论】:

【参考方案1】:
string[] imageDir = null;
string sourceFilePath = "~/VirtualDirectory"; 

【讨论】:

【参考方案2】:

你可以试试下面的代码,你需要使用ServerManagerClass。

ServerManager serverManager = new ServerManager();
 // get the site (e.g. default)
Site site = serverManager.Sites.FirstOrDefault(s => s.Name == "Default Web Site");
 // get the application that you are interested in
Application myApp = site.Applications["/Dev1"];
 // get the physical path of the virtual directory
Console.WriteLine(myApp.VirtualDirectories[0].PhysicalPath);

【讨论】:

以上是关于如何在应用程序中提供虚拟目录路径的主要内容,如果未能解决你的问题,请参考以下文章

如何在apache 配置虚拟目录

c#中如何访问虚拟目录路径?

在 .css 文件中引用应用程序相对虚拟路径

Elastic Beanstalk Nginx 提供静态文件

如何为本地主机测试运行设置虚拟目录?

如何把物理路径转换成虚拟路径