SiteMapProviderCollection Class
Assembly: System.Web (in system.web.dll)
'Declaration Public NotInheritable Class SiteMapProviderCollection Inherits ProviderCollection 'Usage Dim instance As SiteMapProviderCollection
public final class SiteMapProviderCollection extends ProviderCollection
public final class SiteMapProviderCollection extends ProviderCollection
Not applicable.
The SiteMapProviderCollection class is a strongly typed Hashtable collection of SiteMapProvider objects. In addition to the two add methods, Add(ProviderBase) and Add(SiteMapProvider), the SiteMapProviderCollection class supports the AddArray method to add an array of type SiteMapProvider.
The SiteMapProviderCollection is used by the SiteMap class to track the set of SiteMapProvider objects that are available to the SiteMap during site map initialization. However, the presence of a SiteMapProvider in the provider collection does not necessarily mean it is used by a SiteMap object, only that it is available for use.
When a SiteMapProvider is stored in the SiteMapProviderCollection, the Name property is used as the key.
The following code example demonstrates how to retrieve the SiteMapProviderCollection object from the SiteMap object and iterate through it.
If you have more than just the default provider configured for your site, you will see each provider that is displayed. For example, if you are using the sample AccessSiteMapProvider found in the SiteMapProvider class overview, you will see the following output.
XmlSiteMapProvider System.Web.XmlSiteMapProvider AccessSiteMapProvider Samples.AspNet.Controls.AccessSiteMapProvider
<%@ Page Language="VB" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <SCRIPT runat="server"> Private Sub Page_Load(Sender As Object, E As EventArgs) ' Navigate the SiteMap built by the default SiteMapProvider. Response.Write(SiteMap.RootNode.ToString() & "<BR>") Response.Write(SiteMap.RootNode.Url & "<BR>") Response.Write(SiteMap.RootNode.Title & "<BR>") Dim sitemapnode As SiteMapNode For Each sitemapnode In SiteMap.RootNode.ChildNodes ' Iterate through the ChildNodes SiteMapNodesCollection ' maintained by the RootNode. Response.Write(sitemapnode.Url & "<BR>" ) Next Dim providers As IDictionaryEnumerator = SiteMap.Providers.GetEnumerator() While (providers.MoveNext()) Response.Write(providers.Current) Response.Write(" ") Response.Write("<BR>") End While End Sub ' Page_Load </SCRIPT>
- AspNetHostingPermission for operating in a hosted environment. Demand value: LinkDemand; Permission value: Minimal.
- AspNetHostingPermission for operating in a hosted environment. Demand value: InheritanceDemand; Permission value: Minimal.