SiteMapProviderCollection Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Usado pela classe SiteMap para rastrear o conjunto de objetos SiteMapProvider disponíveis para o SiteMap durante a inicialização do mapa de site. 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
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, 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(" ");
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>
Comentários
A SiteMapProviderCollection classe é uma coleção fortemente tipada Hashtable de SiteMapProvider objetos. Além dos dois métodos add e Add(ProviderBase)Add(SiteMapProvider), a SiteMapProviderCollection classe dá suporte ao AddArray método para adicionar uma matriz do tipo SiteMapProvider.
O SiteMapProviderCollection é usado pela SiteMap classe para acompanhar o conjunto de SiteMapProvider objetos que estão disponíveis para o durante a inicialização do SiteMap mapa do site. No entanto, a presença de um SiteMapProvider na coleção de provedores não significa necessariamente que ele é 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
SiteMapProviderCollection() |
Inicializa uma nova instância da classe SiteMapProviderCollection. |
Propriedades
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 objeto SiteMapProvider com um nome específico da coleção de provedores. |
SyncRoot |
Obtém o objeto atual. (Herdado de ProviderCollection) |
Métodos
Add(ProviderBase) |
Adiciona um SiteMapProvider à coleção de provedor usando a propriedade Name como a chave. |
Add(SiteMapProvider) |
Adiciona um objeto SiteMapProvider à coleção de provedor usando a propriedade Name como a chave. |
AddArray(SiteMapProvider[]) |
Adiciona uma matriz de objetos SiteMapProvider na coleção de provedores usando as propriedades Name como chaves. |
Clear() |
Remove todos os itens da coleção. (Herdado de ProviderCollection) |
CopyTo(ProviderBase[], Int32) |
Copia os conteúdos da coleção para a matriz fornecida, começando no í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 interface IEnumerator para iterar pela 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 Object atual. (Herdado de Object) |
Remove(String) |
Remove um provedor da coleção. (Herdado de ProviderCollection) |
SetReadOnly() |
Define a coleção como sendo 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
ICollection.CopyTo(Array, Int32) |
Copia os elementos do ProviderCollection para uma matriz, começando em um índice de matriz específico. (Herdado de ProviderCollection) |
Métodos de Extensão
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. |
AsParallel(IEnumerable) |
Habilita a paralelização de uma consulta. |
AsQueryable(IEnumerable) |
Converte um IEnumerable em um IQueryable. |