Sdílet prostřednictvím


SiteMapProviderCollection Třída

Definice

Používá se SiteMap třídou ke sledování sady SiteMapProvider objektů, které jsou k SiteMap dispozici během inicializace mapy webu. Tato třída se nemůže dědit.

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
Dědičnost
SiteMapProviderCollection

Příklady

Následující příklad kódu ukazuje, jak načíst SiteMapProviderCollection objekt z objektu SiteMap a iterovat přes něj.

Pokud máte pro web nakonfigurovaných víc než jen výchozího poskytovatele, zobrazí se každý zprostředkovatele, který se zobrazí. Pokud například používáte ukázku AccessSiteMapProvider v přehledu SiteMapProvider třídy, zobrazí se následující výstup.

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>

Poznámky

Třída SiteMapProviderCollection je kolekce objektů se silnými typy HashtableSiteMapProvider . Kromě dvou metod Add(ProviderBase) add a Add(SiteMapProvider)SiteMapProviderCollection třída podporuje metodu AddArray pro přidání pole typu SiteMapProvider.

Třída SiteMapProviderCollection je používána SiteMap ke sledování sady SiteMapProvider objektů, které jsou k dispozici během SiteMap inicializace mapy webu. Přítomnost objektu SiteMapProvider v kolekci zprostředkovatele však nemusí nutně znamenat, že je objekt používán SiteMap , pouze to, že je k dispozici pro použití.

SiteMapProvider Pokud je vlastnost uložena v objektu SiteMapProviderCollection, použije se Name jako klíč vlastnost.

Konstruktory

SiteMapProviderCollection()

Inicializuje novou instanci SiteMapProviderCollection třídy.

Vlastnosti

Count

Získá počet zprostředkovatelů v kolekci.

(Zděděno od ProviderCollection)
IsSynchronized

Získá hodnotu označující, zda je synchronizován přístup ke kolekci (bez vláken).

(Zděděno od ProviderCollection)
Item[String]

SiteMapProvider Získá objekt s konkrétním názvem z kolekce zprostředkovatele.

SyncRoot

Získá aktuální objekt.

(Zděděno od ProviderCollection)

Metody

Add(ProviderBase)

SiteMapProvider Přidá objekt do kolekce zprostředkovatele pomocí Name vlastnosti jako klíče.

Add(SiteMapProvider)

SiteMapProvider Přidá objekt do kolekce zprostředkovatele pomocí Name vlastnosti jako klíče.

AddArray(SiteMapProvider[])

Přidá pole SiteMapProvider objektů do kolekce zprostředkovatele pomocí Name vlastností jako klíčů.

Clear()

Odebere všechny položky z kolekce.

(Zděděno od ProviderCollection)
CopyTo(ProviderBase[], Int32)

Zkopíruje obsah kolekce do daného pole počínaje zadaným indexem.

(Zděděno od ProviderCollection)
Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetEnumerator()

Vrátí objekt, který implementuje IEnumerator rozhraní pro iteraci kolekcí.

(Zděděno od ProviderCollection)
GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetType()

Získá aktuální Type instanci.

(Zděděno od Object)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
Remove(String)

Odebere z kolekce zprostředkovatele.

(Zděděno od ProviderCollection)
SetReadOnly()

Nastaví kolekci jen pro čtení.

(Zděděno od ProviderCollection)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Explicitní implementace rozhraní

ICollection.CopyTo(Array, Int32)

Zkopíruje elementy ProviderCollection do pole počínaje určitým indexem pole.

(Zděděno od ProviderCollection)

Metody rozšíření

Cast<TResult>(IEnumerable)

Přetypuje prvky objektu na IEnumerable zadaný typ.

OfType<TResult>(IEnumerable)

Filtruje prvky objektu IEnumerable na základě zadaného typu.

AsParallel(IEnumerable)

Umožňuje paralelizaci dotazu.

AsQueryable(IEnumerable)

Převede objekt na IEnumerableIQueryable.

Platí pro

Viz také