Compartilhar via


SiteMapProviderCollection Classe

Definição

Usado pela SiteMap classe para acompanhar o conjunto de SiteMapProvider objetos que estão disponíveis para a SiteMap inicialização do mapa do site durante. Essa classe não pode ser herdada.

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
Herança
SiteMapProviderCollection

Exemplos

O exemplo de código a seguir demonstra como recuperar o SiteMapProviderCollection objeto do SiteMap objeto e iterar por meio dele.

Se você tiver mais do que apenas o provedor padrão configurado para seu site, você verá cada provedor exibido. Por exemplo, se você estiver usando o exemplo AccessSiteMapProvider encontrado na visão geral da SiteMapProvider classe, verá a saída a seguir.

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>

Comentários

A SiteMapProviderCollection classe é uma coleção fortemente tipada Hashtable de SiteMapProvider objetos. Além dos dois métodos Add(ProviderBase) de adição e Add(SiteMapProvider), a SiteMapProviderCollection classe dá suporte ao AddArray método para adicionar uma matriz de tipo SiteMapProvider.

O SiteMapProviderCollection é usado pela SiteMap classe para acompanhar o conjunto de SiteMapProvider objetos que estão disponíveis para a SiteMap inicialização do mapa do site durante. No entanto, a presença de um SiteMapProvider na coleção de provedores não significa necessariamente que ele seja usado por um SiteMap objeto, apenas que ele está disponível para uso.

Quando um SiteMapProvider é armazenado no SiteMapProviderCollection, a Name propriedade é usada como a chave.

Construtores

Nome Description
SiteMapProviderCollection()

Inicializa uma nova instância da classe SiteMapProviderCollection.

Propriedades

Nome Description
Count

Obtém o número de provedores na coleção.

(Herdado de ProviderCollection)
IsSynchronized

Obtém um valor que indica se o acesso à coleção é sincronizado (thread safe).

(Herdado de ProviderCollection)
Item[String]

Obtém um SiteMapProvider objeto com um nome específico da coleção de provedores.

SyncRoot

Obtém o objeto atual.

(Herdado de ProviderCollection)

Métodos

Nome Description
Add(ProviderBase)

Adiciona um SiteMapProvider à coleção de provedores usando a Name propriedade como a chave.

Add(SiteMapProvider)

Adiciona um SiteMapProvider objeto à coleção de provedores usando a Name propriedade como a chave.

AddArray(SiteMapProvider[])

Adiciona uma matriz de SiteMapProvider objetos à coleção de provedores usando as Name propriedades como chaves.

Clear()

Remove todos os itens da coleção.

(Herdado de ProviderCollection)
CopyTo(ProviderBase[], Int32)

Copia o conteúdo da coleção para a matriz determinada a partir do índice especificado.

(Herdado de ProviderCollection)
Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetEnumerator()

Retorna um objeto que implementa a IEnumerator interface para iterar por meio da coleção.

(Herdado de ProviderCollection)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do Objectatual.

(Herdado de Object)
Remove(String)

Remove um provedor da coleção.

(Herdado de ProviderCollection)
SetReadOnly()

Define a coleção como somente leitura.

(Herdado de ProviderCollection)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Implantações explícitas de interface

Nome Description
ICollection.CopyTo(Array, Int32)

Copia os elementos de ProviderCollection uma matriz, começando em um índice de matriz específico.

(Herdado de ProviderCollection)

Métodos de Extensão

Nome Description
AsParallel(IEnumerable)

Habilita a paralelização de uma consulta.

AsQueryable(IEnumerable)

Converte um IEnumerable em um IQueryable.

Cast<TResult>(IEnumerable)

Converte os elementos de um IEnumerable para o tipo especificado.

OfType<TResult>(IEnumerable)

Filtra os elementos de um IEnumerable com base em um tipo especificado.

Aplica-se a

Confira também