XmlSiteMapProvider Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
A classe XmlSiteMapProvider deriva da classe SiteMapProvider e é o fornecedor padrão de mapas de sites para ASP.NET. A XmlSiteMapProvider classe gera árvores de mapas de sítios a partir de ficheiros XML com a extensão .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
Observações
A XmlSiteMapProvider classe carrega dados de mapa de sites a partir de um ficheiro XML que segue um esquema conhecido. Os dados do mapa do sítio são limitados por <siteMap> etiquetas e consistem em etiquetas aninhadas <siteMapNode> . Duas restrições são impostas pelas SiteMapProvider classes e XmlSiteMapProvider à estrutura dos dados do mapa do sítio:
Só pode existir um nó raiz.
Para SiteMapNode objetos que especificam URLs, os URLs devem ser únicos dentro do âmbito do fornecedor. (Para nós que não especificam URLs, todas as chaves devem ser únicas.)
O seguinte exemplo de código mostra um exemplo de ficheiro XML que pode ser usado com o XmlSiteMapProviderarquivo .
<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 fornecedor padrão para ASP.NET e lê dados XML de um ficheiro chamado Web.sitemap, localizado dentro da estrutura de diretórios da aplicação ASP.NET. Por defeito, o ficheiro Web.sitemap está localizado na raiz da aplicação; No entanto, se quiseres alterar o nome ou a localização do ficheiro de onde carrega XmlSiteMapProvider os dados, podes sobrescrever a configuração padrão no teu ficheiro Web.config. Ao sobrescrever as definições de configuração padrão no seu ficheiro de Web.config, pode adaptar o comportamento do XmlSiteMapProvider para cada aplicação ASP.NET, conforme necessário.
O exemplo de código seguinte demonstra um exemplo Web.config ficheiro, onde o XmlSiteMapProvider ainda é usado, mas é utilizado um ficheiro de mapa de site diferente. Como todos os fornecedores num objeto SiteMapProviderCollection devem ser nomeados de forma única, o que é especificado no ficheiro Web.config usa um nome diferente do padrão, mas também é definido como o fornecedor predefinido para que seja usado em vez do XmlSiteMapProvider especificado na configuração ASP.NET padrão.
Note
Pode alterar o nome do ficheiro de dados de navegação do site, mas não pode alterar a sua extensão. Só XmlSiteMapProvider lê dados de ficheiros nomeados com a extensão .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
| Name | Description |
|---|---|
| XmlSiteMapProvider() |
Cria uma nova instância, sem nome, da XmlSiteMapProvider classe. |
Propriedades
| Name | Description |
|---|---|
| CurrentNode |
Obtém o SiteMapNode objeto que representa a página atualmente solicitada. |
| CurrentNode |
Obtém o SiteMapNode objeto que representa a página atualmente solicitada. (Herdado de SiteMapProvider) |
| Description |
Recebe uma descrição breve e amigável, adequada para exibição em ferramentas administrativas ou outras interfaces de utilizador (UIs). (Herdado de ProviderBase) |
| EnableLocalization |
Recebe ou define um valor booleano que indica se os valores localizados dos SiteMapNode atributos são devolvidos. (Herdado de SiteMapProvider) |
| Name |
Recebe o nome amigável usado para se referir ao fornecedor durante a configuração. (Herdado de ProviderBase) |
| ParentProvider |
Obtém ou define o objeto pai SiteMapProvider do fornecedor atual. (Herdado de SiteMapProvider) |
| ResourceKey |
Obter ou definir 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 atual do fornecedor. (Herdado de SiteMapProvider) |
| SecurityTrimmingEnabled |
Obtém um valor booleano que indica se um fornecedor de mapas de site filtra os nós de mapas de site com base no papel do utilizador. (Herdado de SiteMapProvider) |
Métodos
| Name | Description |
|---|---|
| AddNode(SiteMapNode, SiteMapNode) |
Adiciona um SiteMapNode objeto às coleções mantidas pelo fornecedor atual. |
| AddNode(SiteMapNode) |
Adiciona um SiteMapNode objeto à coleção de nós que é mantida pelo fornecedor do mapa do local. (Herdado de SiteMapProvider) |
| AddProvider(String, SiteMapNode) |
Liga um fornecedor de mapas de sites para crianças ao fornecedor atual. |
| BuildSiteMap() |
Carrega a informação do mapa do site a partir de um ficheiro XML e constrói-a em memória. |
| Clear() |
Remove todos os elementos das coleções de nós de mapas de sítios filho e de origem e de fornecedores de mapas de site que o XmlSiteMapProvider objeto rastreia internamente como parte do seu estado. |
| Dispose() |
Notifica o monitor de ficheiros do ficheiro Web.sitemap que o XmlSiteMapProvider objeto já não necessita de monitorização do ficheiro. |
| Dispose(Boolean) |
Notifica o monitor de ficheiros do ficheiro Web.sitemap que o XmlSiteMapProvider objeto já não necessita de monitorização do ficheiro. O Dispose(Boolean) método assume um parâmetro booleano que indica se o método é chamado por código de utilizador. |
| 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 atualmente solicitada 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 numa chave especificada. |
| GetChildNodes(SiteMapNode) |
Devolve os nós filhos do mapa do site. |
| GetChildNodes(SiteMapNode) |
Recupera os nós filhos do mapa do sítio de um objeto específico SiteMapNode . (Herdado de StaticSiteMapProvider) |
| GetCurrentNodeAndHintAncestorNodes(Int32) |
Fornece um método de pesquisa otimizado para fornecedores de mapas de sites ao recuperar o nó da página atualmente solicitada e ao obter os nós de mapa do sítio pai e antepassado para a página atual. (Herdado de SiteMapProvider) |
| GetCurrentNodeAndHintNeighborhoodNodes(Int32, Int32) |
Fornece um método de pesquisa otimizado para fornecedores de mapas de sítios ao recuperar o nó da página atualmente solicitada e obter os nós do mapa do sítio próximos do nó atual. (Herdado de SiteMapProvider) |
| GetHashCode() |
Serve como função de hash predefinida. (Herdado de Object) |
| GetParentNode(SiteMapNode) |
Devolve o nó pai do mapa do site. |
| GetParentNode(SiteMapNode) |
Recupera o nó do mapa do sítio principal de um objeto específico SiteMapNode . (Herdado de StaticSiteMapProvider) |
| GetParentNodeRelativeToCurrentNodeAndHintDownFromParent(Int32, Int32) |
Fornece um método de pesquisa otimizado para fornecedores de mapas de site ao recuperar um nó ancestral para a página atualmente solicitada e obter os nós descendentes do antepassado. (Herdado de SiteMapProvider) |
| GetParentNodeRelativeToNodeAndHintDownFromParent(SiteMapNode, Int32, Int32) |
Fornece um método de pesquisa otimizado para fornecedores de mapas de site ao recuperar um nó ancestral para o objeto especificado SiteMapNode e ao obter os seus nós filhos. (Herdado de SiteMapProvider) |
| GetRootNodeCore() |
Recupera o nó de topo da estrutura de dados atual do mapa do local. |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| HintAncestorNodes(SiteMapNode, Int32) |
Fornece um método que os fornecedores de mapas de site podem sobrepor para realizar uma recuperação otimizada de um ou mais níveis de nós pai e ancestral, relativamente ao objeto especificado SiteMapNode . (Herdado de SiteMapProvider) |
| HintNeighborhoodNodes(SiteMapNode, Int32, Int32) |
Fornece um método que os fornecedores de mapas de site podem sobrepor para realizar uma recuperação otimizada dos nós encontrados na proximidade do nó especificado. (Herdado de SiteMapProvider) |
| Initialize(String, NameValueCollection) |
Inicializa o objeto XmlSiteMapProvider. O Initialize(String, NameValueCollection) método não constrói propriamente um mapa do sítio, apenas prepara o estado do XmlSiteMapProvider local para o fazer. |
| IsAccessibleToUser(HttpContext, SiteMapNode) |
Recupera um valor booleano que indica se o objeto especificado SiteMapNode pode ser visualizado pelo utilizador no contexto especificado. (Herdado de SiteMapProvider) |
| MemberwiseClone() |
Cria uma cópia superficial do atual Object. (Herdado de Object) |
| RemoveNode(SiteMapNode) |
Remove o objeto especificado SiteMapNode de todas as coleções de nós que são rastreadas pelo fornecedor. |
| RemoveProvider(String) |
Remove um fornecedor de mapas de site filho ligado da hierarquia do fornecedor atual. |
| ResolveSiteMapNode(HttpContext) |
Eleva o SiteMapResolve evento. (Herdado de SiteMapProvider) |
| ToString() |
Devolve uma cadeia que representa o objeto atual. (Herdado de Object) |
evento
| Name | Description |
|---|---|
| SiteMapResolve |
Ocorre quando a CurrentNode propriedade é chamada. (Herdado de SiteMapProvider) |