如何在IIS7中使应用程序与应用程序池关联

本文关键字:应用程序 应用 程序池 关联 IIS7 | 更新日期: 2023-09-27 18:10:10

我有一个虚拟目录名。对于这个虚拟目录,我必须找到相关联的应用程序池。一旦我得到了应用程序池,我必须找出这个应用程序池上的所有虚拟目录。我使用这段代码来找出与virtual相关联的应用程序池目录

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;
                    }
                }
            }

如何在IIS7中使应用程序与应用程序池关联

using (var serverManager = new ServerManager())
{
    var apps = (from site in serverManager.Sites
                from app in site.Applications
                where app.ApplicationPoolName.Equals("DefaultAppPool")
                select app);
}

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

 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;
                }
            }
        }

或者新建一行不循环的方法:

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