【发布时间】:2016-02-22 15:28:01
【问题描述】:
我编写了一个小工具,可以在 Windows 服务器上安装 Web 应用程序和所有需要的软件包。该工具创建应用程序池和所需的应用程序。在我的开发机器上一切正常,但在测试服务器上(使用 iis 全新安装 w2k8r2)该工具会崩溃,但出现以下异常:
System.MissingMethodException: 找不到方法:'无效 Microsoft.Web.Administration.ApplocationPool.set_Startmode(Microsoft.Web.Administration.Startmode)'
这是我用来创建 appPool 的代码:
using (ServerManager serverManager = new ServerManager())
{
try
{
if (!serverManager.ApplicationPools.Any(x => x.Name == appPoolName))
{
ApplicationPool appPool = serverManager.ApplicationPools.Add(appPoolName);
appPool.ManagedRuntimeVersion = "v4.0";
appPool.StartMode = StartMode.AlwaysRunning;
appPool.ProcessModel.IdentityType = ProcessModelIdentityType.LocalSystem;
serverManager.CommitChanges();
}
result = true;
}
catch (Exception e)
{
Console.WriteLine(e);
}
}
我已经使用服务器管理器安装了 IIS 管理工具和脚本。是我遗漏了包裹还是我的代码有误?
更新:
正如 PhillipH 在他的回答中所写,IIS 7.5 不支持属性 StartMode。
【问题讨论】:
标签: c# iis automation