簡體   English   中英

如何在IIS7中獲取與應用程序池關聯的應用程序

[英]How to get applications associated with a application pool in IIS7

我有一個虛擬目錄名稱。 對於這個虛擬目錄,我必須找出相關的應用程序池。 一旦我獲得應用程序池,我必須找出此應用程序池中的所有虛擬目錄..我使用此代碼找出與虛擬目錄關聯的應用程序池

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

可能是這個鏈接將為您提供開發代碼的提示

重新啟動(回收)應用程序池

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM