【问题标题】:Get mode Application Pool programmatically in ASP.NET 4.5在 ASP.NET 4.5 中以编程方式获取模式应用程序池
【发布时间】:2015-11-24 22:59:46
【问题描述】:
我在 Windows 2008 R2 下运行 IIS 7.5(我在开发中使用 Windows 8.1)。
我在 Windows 8.1 中使用 VS 2012。
我使用 ASP.NET 4.5。 .NET 4.5.1 在我的项目 csproj 中。
以编程方式 如何知道应用程序池模式是经典还是集成?
【问题讨论】:
标签:
c#
application-pool
asp.net-4.5
integrated-pipeline-mode
【解决方案1】:
你需要使用Microsoft.Web.Administration 命名空间。您可以从 NuGet 或 %WinDir%\System32\InetSrv\Microsoft.Web.Administration.dll 获取此文件
使用ServerManager 类,您可以获得所需的应用程序池。您要查找的应用程序池上的属性是ManagedPipelineMode。
var serverManager = new ServerManager();
var appPool = serverManager.ApplicationPools[0]; // get appPool by Index or by appPoolName
var managedPipelineMode = appPool.ManagedPipelineMode;
返回值可以是0也可以是1:
0 - 集成 - 托管管道在集成模式下运行。
1 - 经典 - 托管管道在 ISAPI 模式下运行。