get all sites under IIS

https://stackoverflow.com/questions/2555668/how-to-programmatically-get-sites-list-and-virtual-dirs-in-iis-7

Check out this post - seems to be a brand-spanking new management API in the Microsoft.Web.Administration namespace:

http://blogs.msdn.com/carlosag/archive/2006/04/17/MicrosoftWebAdministration.aspx

Here's a quick graphical overview from that blog post:

 

And here's a "The Gu" post on Cool new IIS7 Features and APIs

Something like this will find all the sites, their application and their virtual directories in your IIS7 server:

  static void Main(string[] args)
    {
        ServerManager mgr = new ServerManager();

        foreach(Site s in mgr.Sites)
        {
            Console.WriteLine("Site {0}", s.Name);

            foreach(Application app in s.Applications)
            {
                Console.WriteLine("\tApplication: {0}", app.Path);

                foreach(VirtualDirectory virtDir in app.VirtualDirectories)
                {
                    Console.WriteLine("\t\tVirtual Dir: {0}", virtDir.Path);
                }
            }
        }

        Console.ReadLine();
    }

 

posted @ 2018-12-04 11:01  ChuckLu  阅读(268)  评论(0编辑  收藏  举报