我在 Windows 2008 R2 下运行 IIS 7.5(我在开发中使用 Windows 8.1)。
我在 Windows 8.1 中使用 VS 2012。
我使用 ASP.NET 4.5。我的项目 csproj 中的 .NET 4.5.1。
以编程 方式如何知道应用程序池模式是经典还是集成?
我在 Windows 2008 R2 下运行 IIS 7.5(我在开发中使用 Windows 8.1)。
我在 Windows 8.1 中使用 VS 2012。
我使用 ASP.NET 4.5。我的项目 csproj 中的 .NET 4.5.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 模式下运行。