Udostępnij za pośrednictwem


SiteMapProviderCollection Klasa

Definicja

Używany przez klasę SiteMap do śledzenia zestawu SiteMapProvider obiektów, które są dostępne dla SiteMap inicjalizacji mapy lokacji. Klasa ta nie może być dziedziczona.

public ref class SiteMapProviderCollection sealed : System::Configuration::Provider::ProviderCollection
public sealed class SiteMapProviderCollection : System.Configuration.Provider.ProviderCollection
type SiteMapProviderCollection = class
    inherit ProviderCollection
Public NotInheritable Class SiteMapProviderCollection
Inherits ProviderCollection
Dziedziczenie
SiteMapProviderCollection

Przykłady

W poniższym przykładzie kodu pokazano, jak pobrać SiteMapProviderCollection obiekt z SiteMap obiektu i iterować go.

Jeśli masz więcej niż tylko domyślnego dostawcę skonfigurowanego dla witryny, zobaczysz każdego wyświetlanego dostawcę. Jeśli na przykład używasz przykładu AccessSiteMapProvider znalezionego w przeglądzie SiteMapProvider klasy, zostaną wyświetlone następujące dane wyjściowe.

XmlSiteMapProvider   System.Web.XmlSiteMapProvider  
AccessSiteMapProvider   Samples.AspNet.Controls.AccessSiteMapProvider  
<%@ 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("&nbsp;&nbsp;&nbsp;");
        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("&nbsp;&nbsp;&nbsp;")
        Response.Write("<BR>")
    End While
End Sub ' Page_Load

</SCRIPT>

Uwagi

Klasa SiteMapProviderCollection jest silnie typizowana Hashtable kolekcją SiteMapProvider obiektów. Oprócz dwóch metod Add(ProviderBase) dodawania i Add(SiteMapProvider)klasa SiteMapProviderCollection obsługuje metodę AddArray , aby dodać tablicę typu SiteMapProvider.

Element SiteMapProviderCollection jest używany przez klasę SiteMap do śledzenia zestawu SiteMapProvider obiektów, które są dostępne dla inicjalizacji SiteMap mapy lokacji. Jednak obecność elementu SiteMapProvider w kolekcji dostawcy niekoniecznie oznacza, że jest używana przez SiteMap obiekt, tylko że jest dostępna do użycia.

SiteMapProvider Gdy element jest przechowywany w obiekcie SiteMapProviderCollection, Name właściwość jest używana jako klucz.

Konstruktory

SiteMapProviderCollection()

Inicjuje nowe wystąpienie klasy SiteMapProviderCollection.

Właściwości

Count

Pobiera liczbę dostawców w kolekcji.

(Odziedziczone po ProviderCollection)
IsSynchronized

Pobiera wartość wskazującą, czy dostęp do kolekcji jest synchronizowany (bezpieczny wątek).

(Odziedziczone po ProviderCollection)
Item[String]

SiteMapProvider Pobiera obiekt o określonej nazwie z kolekcji dostawcy.

SyncRoot

Pobiera bieżący obiekt.

(Odziedziczone po ProviderCollection)

Metody

Add(ProviderBase)

Dodaje element SiteMapProvider do kolekcji dostawców przy użyciu Name właściwości jako klucza.

Add(SiteMapProvider)

SiteMapProvider Dodaje obiekt do kolekcji dostawców przy użyciu Name właściwości jako klucza.

AddArray(SiteMapProvider[])

Dodaje tablicę SiteMapProvider obiektów do kolekcji dostawców przy użyciu Name właściwości jako kluczy.

Clear()

Usuwa wszystkie elementy z kolekcji.

(Odziedziczone po ProviderCollection)
CopyTo(ProviderBase[], Int32)

Kopiuje zawartość kolekcji do danej tablicy rozpoczynającej się od określonego indeksu.

(Odziedziczone po ProviderCollection)
Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
GetEnumerator()

Zwraca obiekt, który implementuje IEnumerator interfejs w celu iteracji w kolekcji.

(Odziedziczone po ProviderCollection)
GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetType()

Type Pobiera bieżące wystąpienie.

(Odziedziczone po Object)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
Remove(String)

Usuwa dostawcę z kolekcji.

(Odziedziczone po ProviderCollection)
SetReadOnly()

Ustawia kolekcję jako tylko do odczytu.

(Odziedziczone po ProviderCollection)
ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)

Jawne implementacje interfejsu

ICollection.CopyTo(Array, Int32)

Kopiuje elementy ProviderCollection do tablicy, zaczynając od określonego indeksu tablicy.

(Odziedziczone po ProviderCollection)

Metody rozszerzania

Cast<TResult>(IEnumerable)

Rzutuje elementy elementu IEnumerable do określonego typu.

OfType<TResult>(IEnumerable)

Filtruje elementy elementu IEnumerable na podstawie określonego typu.

AsParallel(IEnumerable)

Umożliwia równoległość zapytania.

AsQueryable(IEnumerable)

Konwertuje element IEnumerable na .IQueryable

Dotyczy

Zobacz też