IIS:如何使用Microsoft.Web.Administration在网站中创建虚拟目录

Dar*_*qer 7 c# iis

我正在寻找一种在默认网站中使用Microsoft.Web.Administration创建虚拟目录但不创建应用程序的方法.

我发现的唯一方法是创建应用程序:

Microsoft.Web.Administration.ServerManager manager = new Microsoft.Web.Administration.ServerManager();
Site defaultSite = manager.Sites[ "Default Web Site];
Microsoft.Web.Administration.Application app =
defaultSite.Applications.Add( "\virtDir", "c:\\path" );
manager.CommitChanges();
Run Code Online (Sandbox Code Playgroud)

小智 8

这可能就是你所追求的:

var serverManager = new ServerManager();
serverManager.Sites["WebsiteName"].Applications["ApplicationName"].VirtualDirectories.Add("VirtualDirectoryName, "VirtualDirectoryPath");
Run Code Online (Sandbox Code Playgroud)


Ale*_*ina 7

不确定这是否仍然相关,但通过单独搜索很难找到任何答案.由于我正在努力回答这个确切的问题,我提出的最好的方法是,为了访问Microsoft.Web.Administration.Site的虚拟目录,您可以访问它上面的第一个应用程序:

var serverManager = new ServerManager();
site = serverManager.Sites.Add(websiteName, physicalPath, port);
var dirs = site.Applications[0].VirtualDirectories;
Run Code Online (Sandbox Code Playgroud)

有点违反直觉,但似乎IIS将为您添加的网站创建默认应用程序.

  • 显然,Application [0]是网站运行的默认应用程序.这对我来说能够直接向根添加虚拟目录. (2认同)