XmlSiteMapProvider 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.
A classe XmlSiteMapProvider é derivada da classe SiteMapProvider e é o provedor de mapa de site padrão para ASP.NET. A classe XmlSiteMapProvider gera árvores de mapa do site com base em 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 SiteMapProvider classes e XmlSiteMapProvider na 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 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 no 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 ainda é usado, mas um arquivo de mapa de site diferente é usado. Como todos os provedores em um SiteMapProviderCollection objeto 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.
Observação
Você pode alterar o nome do arquivo de dados de navegação do site, mas não pode alterar sua extensão. O XmlSiteMapProvider lê apenas 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
XmlSiteMapProvider() |
Cria uma nova instância sem nome da classe XmlSiteMapProvider. |
Propriedades
CurrentNode |
Obtém o objeto SiteMapNode que representa a página atualmente solicitada. |
CurrentNode |
Obtém o objeto SiteMapNode que representa a página atualmente solicitada. (Herdado de SiteMapProvider) |
Description |
Obtém uma breve descrição amigável adequada para exibição em ferramentas administrativas ou outras IUs (interfaces do usuário). (Herdado de ProviderBase) |
EnableLocalization |
Obtém ou define um valor booliano que indica se os valores localizados dos atributos SiteMapNode são retornados. (Herdado de SiteMapProvider) |
Name |
Obtém o nome amigável usado para referir-se ao provedor durante a configuração. (Herdado de ProviderBase) |
ParentProvider |
Obtém ou define o objeto SiteMapProvider pai do provedor atual. (Herdado de SiteMapProvider) |
ResourceKey |
Obtém ou define a chave de recursos usada para localizar atributos SiteMapNode. (Herdado de SiteMapProvider) |
RootNode |
Obtém o nó raiz do mapa de site. |
RootProvider |
Obtém o objeto SiteMapProvider raiz na hierarquia de provedores atuais. (Herdado de SiteMapProvider) |
SecurityTrimmingEnabled |
Obtém um valor booliano que indica se um provedor de mapa de site filtra nós do mapa de site com base em uma função do usuário. (Herdado de SiteMapProvider) |
Métodos
AddNode(SiteMapNode, SiteMapNode) |
Adiciona um objeto SiteMapNode às coleções que são mantidas pelo provedor atual. |
AddNode(SiteMapNode) |
Adiciona um objeto SiteMapNode à coleção de nós mantida pelo provedor do mapa do site. (Herdado de SiteMapProvider) |
AddProvider(String, SiteMapNode) |
Vincula um provedor de mapa do site filho ao provedor atual. |
BuildSiteMap() |
Carrega as informações de mapa do site de um arquivo XML e compila-as na memória. |
Clear() |
Remove todos os elementos na coleção de nós de mapa de site pai e filho e provedores de mapa de site que o objeto XmlSiteMapProvider controla internamente como parte de seu estado. |
Dispose() |
Notifica o monitor de arquivos do arquivo Web.sitemap que o objeto XmlSiteMapProvider não exige que o arquivo seja monitorado. |
Dispose(Boolean) |
Notifica o monitor de arquivos do arquivo Web.sitemap que o objeto XmlSiteMapProvider não exige que o arquivo seja monitorado. O método Dispose(Boolean) assume 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 objeto SiteMapNode que representa a página solicitada no momento usando o objeto HttpContext especificado. (Herdado de SiteMapProvider) |
FindSiteMapNode(String) |
Recupera um objeto SiteMapNode que representa a página na URL especificada. |
FindSiteMapNodeFromKey(String) |
Recupera um objeto SiteMapNode com base em uma chave especificada. |
GetChildNodes(SiteMapNode) |
Retorna os nós filho do mapa de site. |
GetChildNodes(SiteMapNode) |
Recupera os nós de mapa de site filhos de um objeto SiteMapNode específico. (Herdado de StaticSiteMapProvider) |
GetCurrentNodeAndHintAncestorNodes(Int32) |
Fornece um método de pesquisa otimizado para provedores de mapa de site ao recuperar o nó para a página solicitada no momento e ao 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ó para a página solicitada no momento e ao buscar os nós de mapa de site na proximidade do nó atual. (Herdado de SiteMapProvider) |
GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
GetParentNode(SiteMapNode) |
Retorna o nó pai do mapa de site. |
GetParentNode(SiteMapNode) |
Recupera o nó pai de mapa de site de um objeto SiteMapNode específico. (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 ao 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 SiteMapNode especificado e ao buscar seus nós filho. (Herdado de SiteMapProvider) |
GetRootNodeCore() |
Recupera o nó de nível superior da estrutura de dados do mapa de 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 ancestrais, relativos ao objeto SiteMapNode especificado. (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 de nós otimizada localizada na proximidade do nó especificado. (Herdado de SiteMapProvider) |
Initialize(String, NameValueCollection) |
Inicializa o objeto XmlSiteMapProvider. O método Initialize(String, NameValueCollection) não cria realmente um mapa do site, apenas prepara o estado do XmlSiteMapProvider para fazer isso. |
IsAccessibleToUser(HttpContext, SiteMapNode) |
Recupera o valor booliano que indica se o objeto SiteMapNode especificado pode ser exibido pelo usuário no contexto especificado. (Herdado de SiteMapProvider) |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
RemoveNode(SiteMapNode) |
Remove o objeto SiteMapNode especificado 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 para o 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
SiteMapResolve |
Ocorre quando a propriedade CurrentNode é chamada. (Herdado de SiteMapProvider) |