vinay
vinay

Reputation: 1034

How to get applications associated with a application pool in IIS7

I have a virtual directory name. For this virtual directory i have to find out the application pool associated. Once i get the application pool i have to find out all the virtual directories on this application pool.. I am using this code to find out the application pool associated with virtual directory

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

Upvotes: 4

Views: 8233

Answers (3)

Rajat Sharma
Rajat Sharma

Reputation: 51

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

Upvotes: 5

Arrya Regan
Arrya Regan

Reputation: 1114

Or a new line no looping approach:

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

Upvotes: 1

vinay
vinay

Reputation: 1034

I think we have to rerun the function for application pool to get the name for applications associated.

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

Upvotes: 2

Related Questions