Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/274.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何获取与应用程序池关联的应用程序/站点的数量(可能还有名称)?_C#_Web Applications_Iis 7_Application Pool - Fatal编程技术网

C# 如何获取与应用程序池关联的应用程序/站点的数量(可能还有名称)?

C# 如何获取与应用程序池关联的应用程序/站点的数量(可能还有名称)?,c#,web-applications,iis-7,application-pool,C#,Web Applications,Iis 7,Application Pool,如果您有一个应用程序池名称,因此可以检索此应用程序池,是否有任何方法可以通过编程方式检索与此应用程序池关联的应用程序或站点?我会满足于只获取一个数字,以基本上确定应用程序池是否正在使用,但如果可能的话,还能够识别正在使用它的应用程序/站点的名称也会很好 我遇到了这个问题,但它似乎是通过循环现有的应用程序来实现的。它不涉及站点,但这应该不会很棘手,因为我可以使用site.ApplicationDefaults.ApplicationPoolName。但是,如果你有应用程序池的名称,有没有一种“干净

如果您有一个应用程序池名称,因此可以检索此应用程序池,是否有任何方法可以通过编程方式检索与此应用程序池关联的应用程序或站点?我会满足于只获取一个数字,以基本上确定应用程序池是否正在使用,但如果可能的话,还能够识别正在使用它的应用程序/站点的名称也会很好


我遇到了这个问题,但它似乎是通过循环现有的应用程序来实现的。它不涉及站点,但这应该不会很棘手,因为我可以使用site.ApplicationDefaults.ApplicationPoolName。但是,如果你有应用程序池的名称,有没有一种“干净”的方法来获取应用程序/网站的集合?

经过长时间的搜索,我找不到一种特定的方法,除了我问题中建议的循环之外。Nicolas R重申了这一点。

我认为您已经找到了解决方案:您提供的问题的公认答案涉及网站和应用程序。@NicolasR-这个答案似乎是一种迂回的方式。使用该方法,我必须检查每个应用程序的应用程序名称,看看它是否与我的1匹配,然后验证应用程序/站点是否正在运行。如果可能的话,我宁愿使用应用程序池名称来获取使用应用程序池的应用程序。请看下面的第二个场景:您可以使用ApplicationPool对象的
WorkerProcess
属性,但它不会反映所有项,只反映那些项loaded@NicolasR-这是一个有用的链接,但遗憾的是,我不能保证应用程序会有一个请求,因此会被加载。看来我得用循环法了。如果你已经有了应用程序池,这似乎是一个愚蠢的问题。是的,我认为另一个解决方案是唯一的解决方法,对不起。我可以把我的评论移到一个答案!