我对 ServerManager 类(来自 Microsoft.Web.Administration 程序集)有一个小问题,我希望你们中的一些人可以帮助我。
基本上,我需要在站点内创建一个新应用程序(使用 IIS 7.5),并将用户重定向到同一事件内的新应用程序。此功能是使用 mvc 3/c# 在 .net Web 应用程序内实现的。
这是我的代码:
ServerManager iisManager = new ServerManager();
Site mySite = iisManager.Sites["mySitesName"];
ApplicationCollection applications = mySite.Applications;
Application app = applications.Add(newapp, physicalPath);
app.ApplicationPoolName = "myAppPool";
iisManager.CommitChanges();
iisManager.Dispose();
return new RedirectResult("http://localhost/" + newapp);
我认为这段代码的问题在于,ServerManager 提交更改的时间似乎略有延迟,并且重定向到 IIS 中新添加的应用程序会返回“HTTP 错误 404.0 - 未找到”,因为从 ServerManager 提交的更改尚未完成(我认为) 。如果我在 404 之后刷新页面,则会加载新应用程序。
非常感谢任何帮助或想法。
Cheers!
似乎关于这种“延迟”的文档很难找到......或者不存在。最后我最终使用了“Thread.Sleep”,就像建议的那样iis.net http://forums.iis.net/t/1181715.aspx.
希望这可以帮助其他有需要的人。
Cheers!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)