我正在使用以下方法创建应用程序池并将其分配给网站。
这是创建应用程序池的代码:
WebSiteName = some website name which existed.
我看到所有值都在调试模式中得到的位置
private void ConfiugreAppPoolIIS7(targetMachine)
{
var mgr = ServerManager.OpenRemote(targetMachine);
if (AppPoolProp.ContainsKey("SomeTestAppPool"))
{
string reqAppPool = AppPoolProp["SomeTestAppPool"];
if (!mgr.ApplicationPools.Any(pool => pool.Name == reqAppPool))
{
ApplicationPool myApp = mgr.ApplicationPools.Add(reqAppPool);
myApp.AutoStart = true;
myApp.ManagedPipelineMode = ManagedPipelineMode.Classic;
myApp.ManagedRuntimeVersion = "V4.0";
myApp.ProcessModel.IdentityType = ProcessModelIdentityType.NetworkService;
myApp.Enable32BitAppOnWin64 = true;
mgr.CommitChanges();
foreach (Site site in mgr.Sites)
{
if(site.Name == WebSiteName)
{
site.Stop();
site.ApplicationDefaults.ApplicationPoolName = myApp.Name;
site.Start();
mgr.CommitChanges();
}
}
}
}
}
结果是,我看到Aplication池已成功创建,并且网站也已创建,但是,我在网站的高级设置中看到默认应用程序池已分配。
你能帮忙吗?
答案 0 :(得分:2)
通过修复对Microsoft.Web.Administration.dll
的正确引用来修复此问题此服务器管理连接到表达iis而不是本地iis的原因。