ServerManager不提交对IIS的更改(新应用程序)

时间:2015-06-29 13:21:39

标签: c# asp.net iis

我在Win7上使用vs2013&我已将Microsoft.Web.Administration包安装到VS.从这里我有一个Microsoft.Web.Administration.dll的引用,所有工作正常连接到我的IIS服务器,我可以看到我的所有网站。 我使用这个直接的代码创建了一个新的应用程序:

ServerManager iisManager = new ServerManager();
Microsoft.Web.Administration.Site site = iisManager.Sites["Default Web Site"];
site.Applications.Add("/Test", @"c:\blah\blah");               
iisManager.CommitChanges();

添加了应用程序,因为我可以看到site.Applications.Count已经增加,但我在IIS控制台中看不到应用程序,当我重新创建ServerManager对象并检查Sites.Applications时,应用程序是失踪。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

好的我发现了问题 - 它与调用CommitChanges的ServerManager实例有关。在我的伪代码中,我使用了

Microsoft.Web.Administration.Site site = iisManager.Sites["Default Web Site"];

但实际上我有一个例程来获取对该站点的引用,在该例程中我创建了一个新的ServerManager实例。只要我使用相同的ServerManager实例来获取站点并提交更改,一切正常。有点模糊......