Freigeben über


SiteMap.Providers Eigenschaft

Definition

Ruft eine schreibgeschützte Auflistung von genannten SiteMapProvider-Objekten ab, die der SiteMap-Klasse zur Verfügung stehen.

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

Eigenschaftswert

Eine SiteMapProviderCollection von genannten SiteMapProvider-Objekten.

Ausnahmen

Das Siteübersichtsfeature ist nicht aktiviert.

Der in der Konfiguration angegebene Standardanbieter ist nicht vorhanden.

Das Feature wird nur unterstützt, wenn es mindestens mit niedriger Vertrauenswürdigkeit ausgeführt wird.

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie die Providers Auflistung aus der SiteMap -Klasse abgerufen und anschließend durchlaufen wird.

<%@ 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>

Wenn Sie mehr als nur den Standardanbieter für Ihren Standort konfiguriert haben, wird jeder Anbieter angezeigt. Wenn Sie beispielsweise das Beispiel Microsoft Access-Anbieter verwenden (siehe StaticSiteMapProvider), wird die folgende Ausgabe angezeigt:

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

Hinweise

Die In der Providers Auflistung aufgeführten Siteübersichtsanbieter sind diejenigen, die in der Konfigurationshierarchie angegeben sind, um die SiteMap Klasse zu initialisieren. Nur der Standardanbieter (durch die -Eigenschaft identifiziert) wird während der Provider Initialisierung garantiert SiteMap verwendet. Das Vorhandensein eines Anbieters in der Providers Auflistung bedeutet, dass er in der Konfiguration angegeben wurde und während der Initialisierung verfügbar war.

Gilt für:

Weitere Informationen