SiteMap.Providers Eigenschap

Definitie

Hiermee haalt u een alleen-lezen verzameling benoemde SiteMapProvider objecten op die beschikbaar zijn voor de SiteMap klasse.

public:
 static property System::Web::SiteMapProviderCollection ^ Providers { System::Web::SiteMapProviderCollection ^ get(); };
public static System.Web.SiteMapProviderCollection Providers { get; }
static member Providers : System.Web.SiteMapProviderCollection
Public Shared ReadOnly Property Providers As SiteMapProviderCollection

Waarde van eigenschap

Een SiteMapProviderCollection van benoemde SiteMapProvider objecten.

Uitzonderingen

De functie siteoverzicht is niet ingeschakeld.

De standaardprovider die in de configuratie is opgegeven, bestaat niet.

De functie wordt alleen ondersteund wanneer deze wordt uitgevoerd in Een lage vertrouwensrelatie of hoger.

Voorbeelden

In het volgende codevoorbeeld ziet u hoe u de Providers verzameling ophaalt uit de SiteMap klasse en vervolgens doorloopt.

<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<SCRIPT runat="server">
private void Page_Load(object sender, System.EventArgs e)
{
    // 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>");

    foreach (SiteMapNode sitemapnode in SiteMap.RootNode.ChildNodes)
    {
        // Iterate through the ChildNodes SiteMapNodesCollection
        // maintained by the RootNode.
        Response.Write(sitemapnode.Url + "<BR>" );
    }

    IEnumerator providers = SiteMap.Providers.GetEnumerator();
    while (providers.MoveNext())
    {
        Response.Write(providers.Current);
        Response.Write("   ");
        Response.Write("<BR>");
    }
}
</SCRIPT>
<%@ 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>

Als u meer dan alleen de standaardprovider hebt geconfigureerd voor uw site, ziet u dat elke provider wordt weergegeven. Als u bijvoorbeeld de voorbeeldprovider Microsoft Access gebruikt (zie StaticSiteMapProvider), ziet u de volgende uitvoer:

XmlSiteMapProvider   System.Web.XmlSiteMapProvider
AccessSiteMapProvider   Samples.AspNet.AccessSiteMapProvider

Opmerkingen

De siteoverzichtproviders die in de Providers verzameling worden vermeld, zijn providers die zijn opgegeven in de configuratiehiërarchie om de SiteMap klasse te initialiseren. Alleen de standaardprovider (geïdentificeerd door de Provider eigenschap) wordt gegarandeerd gebruikt door de SiteMap tijdens de initialisatie; de aanwezigheid van een provider in de Providers verzameling betekent dat deze is opgegeven in de configuratie en beschikbaar was tijdens de initialisatie.

Van toepassing op

Zie ook