XmlSiteMapProvider Classe

Definição

A classe XmlSiteMapProvider é derivada da classe SiteMapProvider e é o provedor de mapa de site padrão para ASP.NET.The XmlSiteMapProvider class is derived from the SiteMapProvider class and is the default site map provider for 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.The XmlSiteMapProvider class generates site map trees from XML files with the file name extension .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 de mapa do site de um arquivo XML que segue um esquema conhecido.The XmlSiteMapProvider class loads site map data from an XML file that follows a known schema. Os dados do mapa do site são limitados por <siteMap> marcas e consistem em marcas aninhadas <siteMapNode> .The site map data is bounded by <siteMap> tags and consists of nested <siteMapNode> tags. Duas restrições são impostas SiteMapProvider pelas XmlSiteMapProvider classes e na estrutura dos dados do mapa do site:Two constraints are imposed by the SiteMapProvider and XmlSiteMapProvider classes on the structure of the site map data:

  • Somente um nó raiz pode existir.Only one root node can exist.

  • Para SiteMapNode objetos que especificam URLs, as URLs devem ser exclusivas dentro do escopo do provedor.For SiteMapNode objects that specify URLs, the URLs must be unique within the scope of the provider. (Para nós que não especificam URLs, todas as chaves devem ser exclusivas.)(For nodes that do not specify URLs, all keys must be unique.)

O exemplo de código a seguir mostra um exemplo de um arquivo XML que pode ser usado com o XmlSiteMapProvider .The following code example shows an example of an XML file that can be used with the 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 na estrutura de diretório do aplicativo ASP.net.The XmlSiteMapProvider is the default provider for ASP.NET and it reads XML data from a file named Web.sitemap that is located within the directory structure of the ASP.NET application. 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 o XmlSiteMapProvider carrega dados, poderá substituir a configuração padrão em seu arquivo de Web.config.By default, the Web.sitemap file is located at the application root; however, if you want to change the name or location of the file from which the XmlSiteMapProvider loads data, you can override the default configuration in your Web.config file. Ao substituir as definições de configuração padrão em seu arquivo de Web.config, você pode personalizar o comportamento do XmlSiteMapProvider para cada aplicativo ASP.net, conforme necessário.By overriding the default configuration settings in your Web.config file, you can tailor the behavior of the XmlSiteMapProvider for each ASP.NET application, as necessary.

O exemplo de código a seguir demonstra um arquivo de Web.config de exemplo, em que o XmlSiteMapProvider ainda é usado, mas um arquivo de mapa do site diferente é usado.The following code example demonstrates an example Web.config file, where the XmlSiteMapProvider is still used, but a different site map file is used. Como todos os provedores em um SiteMapProviderCollection objeto devem ser nomeados exclusivamente, aquele especificado no arquivo de 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 que é especificado na configuração padrão do ASP.net.Because all providers in a SiteMapProviderCollection object must be named uniquely, the one that is specified in the Web.config file uses a name other than the default but is also set as the default provider so that it will be used instead of the XmlSiteMapProvider that is specified in the default ASP.NET configuration.

Observação

Você pode alterar o nome do arquivo de dados de navegação do site, mas não pode alterar sua extensão.You can change the name of the site navigation data file, but you cannot change its extension. O XmlSiteMapProvider só lê dados de arquivos que são nomeados com a extensão de nome de arquivo. sitemap.The XmlSiteMapProvider only reads data from files that are named with the file name extension .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.Creates a new, unnamed, instance of the XmlSiteMapProvider class.

Propriedades

CurrentNode

Obtém o objeto SiteMapNode que representa a página atualmente solicitada.Gets the SiteMapNode object that represents the currently requested page.

CurrentNode

Obtém o objeto SiteMapNode que representa a página atualmente solicitada.Gets the SiteMapNode object that represents the currently requested page.

(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).Gets a brief, friendly description suitable for display in administrative tools or other user interfaces (UIs).

(Herdado de ProviderBase)
EnableLocalization

Obtém ou define um valor booliano que indica se os valores localizados dos atributos SiteMapNode são retornados.Gets or sets a Boolean value indicating whether localized values of SiteMapNode attributes are returned.

(Herdado de SiteMapProvider)
Name

Obtém o nome amigável usado para referir-se ao provedor durante a configuração.Gets the friendly name used to refer to the provider during configuration.

(Herdado de ProviderBase)
ParentProvider

Obtém ou define o objeto SiteMapProvider pai do provedor atual.Gets or sets the parent SiteMapProvider object of the current provider.

(Herdado de SiteMapProvider)
ResourceKey

Obtém ou define a chave de recursos usada para localizar atributos SiteMapNode.Get or sets the resource key that is used for localizing SiteMapNode attributes.

(Herdado de SiteMapProvider)
RootNode

Obtém o nó raiz do mapa de site.Gets the root node of the site map.

RootProvider

Obtém o objeto SiteMapProvider raiz na hierarquia de provedores atuais.Gets the root SiteMapProvider object in the current provider hierarchy.

(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.Gets a Boolean value indicating whether a site map provider filters site map nodes based on a user's role.

(Herdado de SiteMapProvider)

Métodos

AddNode(SiteMapNode)

Adiciona um objeto SiteMapNode à coleção de nós mantida pelo provedor do mapa do site.Adds a SiteMapNode object to the node collection that is maintained by the site map provider.

(Herdado de SiteMapProvider)
AddNode(SiteMapNode, SiteMapNode)

Adiciona um objeto SiteMapNode às coleções que são mantidas pelo provedor atual.Adds a SiteMapNode object to the collections that are maintained by the current provider.

AddProvider(String, SiteMapNode)

Vincula um provedor de mapa do site filho ao provedor atual.Links a child site map provider to the current provider.

BuildSiteMap()

Carrega as informações de mapa do site de um arquivo XML e compila-as na memória.Loads the site map information from an XML file and builds it in memory.

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.Removes all elements in the collections of child and parent site map nodes and site map providers that the XmlSiteMapProvider object internally tracks as part of its state.

Dispose()

Notifica o monitor de arquivos do arquivo Web.sitemap que o objeto XmlSiteMapProvider não exige que o arquivo seja monitorado.Notifies the file monitor of the Web.sitemap file that the XmlSiteMapProvider object no longer requires the file to be monitored.

Dispose(Boolean)

Notifica o monitor de arquivos do arquivo Web.sitemap que o objeto XmlSiteMapProvider não exige que o arquivo seja monitorado.Notifies the file monitor of the Web.sitemap file that the XmlSiteMapProvider object no longer requires the file to be monitored. O método Dispose(Boolean) assume um parâmetro booliano que indica se o método é chamado pelo código do usuário.The Dispose(Boolean) method takes a Boolean parameter indicating whether the method is called by user code.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.Determines whether the specified object is equal to the current object.

(Herdado de Object)
FindSiteMapNode(HttpContext)

Recupera um objeto SiteMapNode que representa a página solicitada no momento usando o objeto HttpContext especificado.Retrieves a SiteMapNode object that represents the currently requested page using the specified HttpContext object.

(Herdado de SiteMapProvider)
FindSiteMapNode(String)

Recupera um objeto SiteMapNode que representa a página na URL especificada.Retrieves a SiteMapNode object that represents the page at the specified URL.

FindSiteMapNodeFromKey(String)

Recupera um objeto SiteMapNode com base em uma chave especificada.Retrieves a SiteMapNode object based on a specified key.

GetChildNodes(SiteMapNode)

Retorna os nós filho do mapa de site.Returns the child nodes of the site map.

GetChildNodes(SiteMapNode)

Recupera os nós de mapa de site filhos de um objeto SiteMapNode específico.Retrieves the child site map nodes of a specific SiteMapNode object.

(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.Provides an optimized lookup method for site map providers when retrieving the node for the currently requested page and fetching the parent and ancestor site map nodes for the current page.

(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.Provides an optimized lookup method for site map providers when retrieving the node for the currently requested page and fetching the site map nodes in the proximity of the current node.

(Herdado de SiteMapProvider)
GetHashCode()

Serve como a função de hash padrão.Serves as the default hash function.

(Herdado de Object)
GetParentNode(SiteMapNode)

Retorna o nó pai do mapa de site.Returns the parent node of the site map.

GetParentNode(SiteMapNode)

Recupera o nó pai de mapa de site de um objeto SiteMapNode específico.Retrieves the parent site map node of a specific SiteMapNode object.

(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.Provides an optimized lookup method for site map providers when retrieving an ancestor node for the currently requested page and fetching the descendant nodes for the ancestor.

(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.Provides an optimized lookup method for site map providers when retrieving an ancestor node for the specified SiteMapNode object and fetching its child nodes.

(Herdado de SiteMapProvider)
GetRootNodeCore()

Recupera o nó de nível superior da estrutura de dados do mapa de site atual.Retrieves the top-level node of the current site map data structure.

GetType()

Obtém o Type da instância atual.Gets the Type of the current instance.

(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.Provides a method that site map providers can override to perform an optimized retrieval of one or more levels of parent and ancestor nodes, relative to the specified SiteMapNode object.

(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.Provides a method that site map providers can override to perform an optimized retrieval of nodes found in the proximity of the specified node.

(Herdado de SiteMapProvider)
Initialize(String, NameValueCollection)

Inicializa o objeto XmlSiteMapProvider.Initializes the XmlSiteMapProvider object. O método Initialize(String, NameValueCollection) não cria realmente um mapa do site, apenas prepara o estado do XmlSiteMapProvider para fazer isso.The Initialize(String, NameValueCollection) method does not actually build a site map, it only prepares the state of the XmlSiteMapProvider to do so.

IsAccessibleToUser(HttpContext, SiteMapNode)

Recupera o valor booliano que indica se o objeto SiteMapNode especificado pode ser exibido pelo usuário no contexto especificado.Retrieves a Boolean value indicating whether the specified SiteMapNode object can be viewed by the user in the specified context.

(Herdado de SiteMapProvider)
MemberwiseClone()

Cria uma cópia superficial do Object atual.Creates a shallow copy of the current Object.

(Herdado de Object)
RemoveNode(SiteMapNode)

Remove o objeto SiteMapNode especificado de todas as coleções de nós que são controladas pelo provedor.Removes the specified SiteMapNode object from all node collections that are tracked by the provider.

RemoveProvider(String)

Remove um provedor de mapa de site filho vinculado da hierarquia para o provedor atual.Removes a linked child site map provider from the hierarchy for the current provider.

ResolveSiteMapNode(HttpContext)

Aciona o evento SiteMapResolve.Raises the SiteMapResolve event.

(Herdado de SiteMapProvider)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.Returns a string that represents the current object.

(Herdado de Object)

Eventos

SiteMapResolve

Ocorre quando a propriedade CurrentNode é chamada.Occurs when the CurrentNode property is called.

(Herdado de SiteMapProvider)

Aplica-se a

Confira também