如何使用C#代码获取IIS虚拟目录和Web应用程序的物理path?

我正在用C#编写一个Web应用程序部署validation工具。 我需要检查Web Applicatons和Virtual Folders的物理文件夹结构。 这可以在C#中完成吗? 或者更一般地说,通过C#代码与IIS交互?

我发现这个链接,并会读回家。

谢谢。

将.Net Web Application部署到非Windows服务器

是否有可能在.NET中检索Windows监视器布局信息?

CultureInfo在Windows版本之间不一致

如何使用.NET枚举属于特定进程的所有窗口?

如何使用Mono在Linux摄像头捕捉?

在64位计算机上执行buildint之后,第一次出现“System.BadImageFormatException”types的exception

如何在PowerShell中使用HTML Tidy .NET DLL封装器?

如何在.NET中提示Internet代理的认Windows凭据对话框窗体?

以编程方式打印文档

强烈地指出三个相互引用的程序集

我强烈建议使用Microsoft.Web.Administration DLL与超级管理员功能与IIS。

serverManager serverManager = new serverManager(); // get the site (eg 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);

得到:

F:开发分行 DEV1

你可以使用WMI来做这种事情:

使用WMI配置IIS 。

以编程方式管理IIS 。

您可以使用C#中的WMI(谷歌为“WMI C#”)。

所以,是的,这是可能的。

看看HttpRequest对象。 您可以使用HttpContext.Current.Request.Url获取当前的URL。

如果你想检查一个虚拟的IIS文件夹是否存在,你可以尝试对你期望存在的相对URL进行一次server.MapPath调用(你也可以在HttpContext对象中找到它),如果映射不成功,你可以假定您的相对路径指定的特定子文件夹不存在。

希望这可以帮助。

相关文章

### 创建一个gRPC服务项目(grpc服务端)和一个 webapi项目(...
一、SiganlR 使用的协议类型 1.websocket即时通讯协议 2.Ser...
.Net 6 WebApi 项目 在Linux系统上 打包成Docker镜像,发布为...
一、 PD简介PowerDesigner 是一个集所有现代建模技术于一身的...
一、存储过程 存储过程就像数据库中运行的方法(函数) 优点:...
一、Ueditor的下载 1、百度编辑器下载地址:http://ueditor....