我已经成功地自动化了创建新 IIS 网站的过程,但是我编写的代码并不关心应用程序池,它只是被添加到 DefaultAppPool 中。但是,我想将这个新创建的站点添加到现有的应用程序池中。
这是我用来创建新网站的代码。
var w3Svc = new DirectoryEntry(string.Format("IIS://{0}/w3svc", webserver));
var newsite = new object[] { serverComment, new object[] { serverBindings }, homeDirectory };
var websiteId = w3Svc.Invoke("CreateNewSite", newsite);
site.Invoke("Start", null);
site.CommitChanges();
<更新>
虽然这与问题没有直接关系,但这里有一些上面使用的示例值。这可能会帮助某人更轻松地准确理解上面的代码在做什么。
- 网络服务器:“本地主机”
- 服务器评论:“testing.dev”
- serverBindings:“:80:testing.dev”
- 主目录:“c:\inetpub\wwwroot\testing\”
< /更新>
如果我知道我希望此网站所在的应用程序池的名称,我如何找到它并将此站点添加到其中?