【问题标题】:How to get applications associated with a application pool in IIS7如何在 IIS7 中获取与应用程序池关联的应用程序
【发布时间】:2011-11-28 06:16:40
【问题描述】:

我有一个虚拟目录名称。对于这个虚拟目录,我必须找出关联的应用程序池。一旦我得到应用程序池,我必须找出这个应用程序池上的所有虚拟目录.. 我正在使用此代码找出与虚拟关联的应用程序池 目录

string AppPoolName = string.Empty;
            ServerManager manager = new ServerManager();
            foreach (Site site in manager.Sites)
            {
                foreach (Application app in site.Applications)
                {
                    string path = app.Path;
                    path = path.Replace("/", " ");
                    path = path.Trim();

                    if (path.ToLower() == VDName.ToLower())
                    {
                        AppPoolName = app.ApplicationPoolName;
                        break;
                    }
                }
            }

【问题讨论】:

    标签: c# iis-7


    【解决方案1】:
    using (var serverManager = new ServerManager())
    {
        var apps = (from site in serverManager.Sites
                    from app in site.Applications
                    where app.ApplicationPoolName.Equals("DefaultAppPool")
                    select app);
    }
    

    【讨论】:

    • 欢迎来到 Stack Overflow!一般来说,如果答案包括对代码的用途的解释,以及为什么在不介绍其他人的情况下解决问题的原因,答案会更有帮助。 (该帖子至少被一位用户标记,大概是因为他们认为应该删除没有解释的答案。)
    • 是否可以使用 appcmd%windir%\system32\inetsrv\appcmd list apppool ...
    • 可以使用 appcmd 列出所有应用程序,@Kiquenet,但您指出了正确的方向,谢谢!
    【解决方案2】:

    或者换行不循环的做法:

     Environment.GetEnvironmentVariable("APP_POOL_ID", EnvironmentVariableTarget.Process);
    

    【讨论】:

      【解决方案3】:

      我认为我们必须重新运行应用程序池的函数以获取关联应用程序的名称。

       ServerManager manager = new ServerManager();
              foreach (Site site in manager.Sites)
              {
                  foreach (Application app in site.Applications)
                  {
      
                      if (app.ApplicationPoolName.ToString() == AppPoolName)
                      {
                           string appname = app.Path;
                      }
                  }
              }
      

      【讨论】:

        猜你喜欢
        • 2010-09-17
        • 1970-01-01
        • 1970-01-01
        • 2012-05-24
        • 2011-01-16
        • 2012-08-31
        • 2012-08-31
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多