SPSite.AllWebs property

Gets the collection of all Web sites that are contained within the site collection, including the top-level site and its subsites.

Namespace:  Microsoft.SharePoint
Assembly:  Microsoft.SharePoint (in Microsoft.SharePoint.dll)

public SPWebCollection AllWebs { get; }

Property value

Type: Microsoft.SharePoint.SPWebCollection
An SPWebCollection object that represents the Web sites.

Best practice is to dispose explicitly of individual Web sites that are retrieved from the collection that is returned through the AllWebs property.

The following code example displays in a console application the number of Web sites in a site collection and their URLs.

using(SPSite oSiteCollection = new SPSite("http://" + System.Environment.MachineName))
    SPWebCollection collWebsites = oSiteCollection.AllWebs;
    Console.WriteLine("Count: {0}", collWebsites.Count);

    foreach (SPWeb oWebsite in collWebsites)
        Console.WriteLine("Web site: {0}", oWebsite.Url);

Certain objects implement the IDisposable interface, and you must avoid retaining these objects in memory after they are no longer needed. For information about good coding practices, see Disposing Objects.