我正在用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对象中找到它),如果映射不成功,你可以假定您的相对路径指定的特定子文件夹不存在。
希望这可以帮助。