XmlSiteMapProvider Classe

Definição

A classe XmlSiteMapProvider é derivada da classe SiteMapProvider e é o provedor de mapa de site padrão para ASP.NET. A XmlSiteMapProvider classe gera árvores de mapa de site de arquivos XML com a extensão de nome de arquivo .sitemap.

public ref class XmlSiteMapProvider : System::Web::StaticSiteMapProvider, IDisposable
public class XmlSiteMapProvider : System.Web.StaticSiteMapProvider, IDisposable
type XmlSiteMapProvider = class
    inherit StaticSiteMapProvider
    interface IDisposable
Public Class XmlSiteMapProvider
Inherits StaticSiteMapProvider
Implements IDisposable
Herança
Implementações

Comentários

A XmlSiteMapProvider classe carrega dados do mapa do site de um arquivo XML que segue um esquema conhecido. Os dados do mapa do site são limitados por <siteMap> marcas e consistem em marcas aninhadas <siteMapNode> . Duas restrições são impostas pelas classes e XmlSiteMapProvider pela SiteMapProvider estrutura dos dados do mapa do site:

  • Somente um nó raiz pode existir.

  • Para SiteMapNode objetos que especificam URLs, as URLs devem ser exclusivas dentro do escopo do provedor. (Para nós que não especificam URLs, todas as chaves devem ser exclusivas.)

O exemplo de código a seguir mostra um exemplo de um arquivo XML que pode ser usado com o XmlSiteMapProvider.

<siteMap>
  <siteMapNode title="RootNode" description="This is the root node of the site map. There can be only one root node." url="Page1.aspx" >
    <siteMapNode title="ChildofRootNode" description="Descriptions do not have to be unique." url="Page2.aspx">
      <siteMapNode title="ChildOfChildNode" description="SiteMapNode objects can be nested to any level." url="Page3.aspx"/>
    </siteMapNode>
    <siteMapNode title="ChildofRootNode" description="Descriptions do not have to be unique." url="Page4.aspx"/>
  </siteMapNode>
</siteMap>

O XmlSiteMapProvider é o provedor padrão para ASP.NET e lê dados XML de um arquivo chamado Web.sitemap que está localizado dentro da estrutura de diretório do aplicativo ASP.NET. Por padrão, o arquivo Web.sitemap está localizado na raiz do aplicativo; no entanto, se você quiser alterar o nome ou o local do arquivo do qual os XmlSiteMapProvider dados são carregados, poderá substituir a configuração padrão em seu arquivo Web.config. Substituindo as configurações padrão no arquivo Web.config, você pode adaptar o comportamento do XmlSiteMapProvider para cada aplicativo ASP.NET, conforme necessário.

O exemplo de código a seguir demonstra um exemplo Web.config arquivo, em que o XmlSiteMapProvider arquivo ainda é usado, mas um arquivo de mapa de site diferente é usado. Como todos os provedores em um objeto SiteMapProviderCollection devem ser nomeados exclusivamente, aquele especificado no arquivo Web.config usa um nome diferente do padrão, mas também é definido como o provedor padrão para que ele seja usado em vez do XmlSiteMapProvider especificado na configuração de ASP.NET padrão.

Note

Você pode alterar o nome do arquivo de dados de navegação do site, mas não pode alterar sua extensão. A XmlSiteMapProvider única leitura de dados de arquivos nomeados com a extensão de nome de arquivo .sitemap.

<siteMap defaultProvider="MyXmlSiteMapProvider" enabled="true">
  <providers>
    <add name="MyXmlSiteMapProvider"
      description="SiteMap provider that reads in .sitemap files."
      type="System.Web.XmlSiteMapProvider, System.Web, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
      siteMapFile="CustomWeb.sitemap" />
  </providers>
</siteMap>

Construtores

Nome Description
XmlSiteMapProvider()

Cria uma nova instância sem nome da XmlSiteMapProvider classe.

Propriedades

Nome Description
CurrentNode

Obtém o SiteMapNode objeto que representa a página solicitada no momento.

CurrentNode

Obtém o SiteMapNode objeto que representa a página solicitada no momento.

(Herdado de SiteMapProvider)
Description

Obtém uma descrição breve e amigável adequada para exibição em ferramentas administrativas ou em outras interfaces de usuário (UIs).

(Herdado de ProviderBase)
EnableLocalization

Obtém ou define um valor booliano que indica se os valores localizados dos SiteMapNode atributos são retornados.

(Herdado de SiteMapProvider)
Name

Obtém o nome amigável usado para se referir ao provedor durante a configuração.

(Herdado de ProviderBase)
ParentProvider

Obtém ou define o objeto pai SiteMapProvider do provedor atual.

(Herdado de SiteMapProvider)
ResourceKey

Obtenha ou define a chave de recurso usada para localizar SiteMapNode atributos.

(Herdado de SiteMapProvider)
RootNode

Obtém o nó raiz do mapa do site.

RootProvider

Obtém o objeto raiz SiteMapProvider na hierarquia do provedor atual.

(Herdado de SiteMapProvider)
SecurityTrimmingEnabled

Obtém um valor booliano que indica se um provedor de mapa de site filtra nós de mapa de site com base na função de um usuário.

(Herdado de SiteMapProvider)

Métodos

Nome Description
AddNode(SiteMapNode, SiteMapNode)

Adiciona um SiteMapNode objeto às coleções mantidas pelo provedor atual.

AddNode(SiteMapNode)

Adiciona um SiteMapNode objeto à coleção de nós que é mantida pelo provedor de mapa do site.

(Herdado de SiteMapProvider)
AddProvider(String, SiteMapNode)

Vincula um provedor de mapa de site filho ao provedor atual.

BuildSiteMap()

Carrega as informações do mapa do site de um arquivo XML e cria-as na memória.

Clear()

Remove todos os elementos nas coleções de nós de mapa de site filho e pai e provedores de mapa de site que o XmlSiteMapProvider objeto rastreia internamente como parte de seu estado.

Dispose()

Notifica o monitor de arquivo do arquivo Web.sitemap de que o XmlSiteMapProvider objeto não exige mais que o arquivo seja monitorado.

Dispose(Boolean)

Notifica o monitor de arquivo do arquivo Web.sitemap de que o XmlSiteMapProvider objeto não exige mais que o arquivo seja monitorado. O Dispose(Boolean) método usa um parâmetro booliano que indica se o método é chamado pelo código do usuário.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
FindSiteMapNode(HttpContext)

Recupera um SiteMapNode objeto que representa a página solicitada no momento usando o objeto especificado HttpContext .

(Herdado de SiteMapProvider)
FindSiteMapNode(String)

Recupera um SiteMapNode objeto que representa a página na URL especificada.

FindSiteMapNodeFromKey(String)

Recupera um SiteMapNode objeto com base em uma chave especificada.

GetChildNodes(SiteMapNode)

Retorna os nós filho do mapa do site.

GetChildNodes(SiteMapNode)

Recupera os nós de mapa do site filho de um objeto específico SiteMapNode .

(Herdado de StaticSiteMapProvider)
GetCurrentNodeAndHintAncestorNodes(Int32)

Fornece um método de pesquisa otimizado para provedores de mapa de site ao recuperar o nó da página solicitada no momento e buscar os nós de mapa de site pai e ancestral para a página atual.

(Herdado de SiteMapProvider)
GetCurrentNodeAndHintNeighborhoodNodes(Int32, Int32)

Fornece um método de pesquisa otimizado para provedores de mapa de site ao recuperar o nó da página solicitada no momento e buscar os nós do mapa do site nas proximidades do nó atual.

(Herdado de SiteMapProvider)
GetHashCode()

Serve como a função hash predefinida.

(Herdado de Object)
GetParentNode(SiteMapNode)

Retorna o nó pai do mapa do site.

GetParentNode(SiteMapNode)

Recupera o nó de mapa do site pai de um objeto específico SiteMapNode .

(Herdado de StaticSiteMapProvider)
GetParentNodeRelativeToCurrentNodeAndHintDownFromParent(Int32, Int32)

Fornece um método de pesquisa otimizado para provedores de mapa de site ao recuperar um nó ancestral para a página solicitada no momento e buscar os nós descendentes para o ancestral.

(Herdado de SiteMapProvider)
GetParentNodeRelativeToNodeAndHintDownFromParent(SiteMapNode, Int32, Int32)

Fornece um método de pesquisa otimizado para provedores de mapa de site ao recuperar um nó ancestral para o objeto especificado SiteMapNode e buscar seus nós filho.

(Herdado de SiteMapProvider)
GetRootNodeCore()

Recupera o nó de nível superior da estrutura de dados do mapa do site atual.

GetType()

Obtém o Type da instância atual.

(Herdado de Object)
HintAncestorNodes(SiteMapNode, Int32)

Fornece um método que os provedores de mapa de site podem substituir para executar uma recuperação otimizada de um ou mais níveis de nós pai e ancestral, em relação ao objeto especificado SiteMapNode .

(Herdado de SiteMapProvider)
HintNeighborhoodNodes(SiteMapNode, Int32, Int32)

Fornece um método que os provedores de mapa de site podem substituir para executar uma recuperação otimizada de nós encontrados na proximidade do nó especificado.

(Herdado de SiteMapProvider)
Initialize(String, NameValueCollection)

Inicializa o objeto XmlSiteMapProvider. O Initialize(String, NameValueCollection) método realmente não cria um mapa de site, ele só prepara o estado do XmlSiteMapProvider para fazer isso.

IsAccessibleToUser(HttpContext, SiteMapNode)

Recupera um valor booliano que indica se o objeto especificado SiteMapNode pode ser exibido pelo usuário no contexto especificado.

(Herdado de SiteMapProvider)
MemberwiseClone()

Cria uma cópia superficial do Objectatual.

(Herdado de Object)
RemoveNode(SiteMapNode)

Remove o objeto especificado SiteMapNode de todas as coleções de nós que são controladas pelo provedor.

RemoveProvider(String)

Remove um provedor de mapa de site filho vinculado da hierarquia do provedor atual.

ResolveSiteMapNode(HttpContext)

Aciona o evento SiteMapResolve.

(Herdado de SiteMapProvider)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Eventos

Nome Description
SiteMapResolve

Ocorre quando a CurrentNode propriedade é chamada.

(Herdado de SiteMapProvider)

Aplica-se a

Confira também