如何以编程方式检测我的应用程序是否在ASP.NET页面中的IIS 7.0集成模式下运行

Mar*_*ark 7 c# asp.net iis-7 integrated-pipeline-mode

通常我们应该控制我们的AppPools并能够强制管理管道模式.在我的情况下,我没有控制权,并希望根据托管流水线模式(集成与经典)实现代码背后的代码.我只是不知道如何检测到这一点.有没有一种简单的方法可以在页面后面的代码中执行此操作?

Dmi*_* S. 8

我在.NET 4.0中找到了一种方法,可以在不引用Microsoft.Web.Administration程序集的情况下执行此操作.该System.Web.HttpRuntime班有UsingIntegratedPipeline布尔属性.


Ole*_*leg 4

查看ApplicationPool.ManagedPipelineModeServerManager.ApplicationPools属性。因此,您可以像ApplicationPool.ManagedPipelineMode示例一样检查当前的 AppPool ,但要针对应用程序的 ApplicationPool 执行此操作,而不是像示例那样针对默认应用程序域执行此操作。其中包含所有池,包括您的池。ServerManager.ApplicationPools