XmlSiteMapProvider Clase

Definición

La clase XmlSiteMapProvider se deriva de la clase SiteMapProvider y es el proveedor de mapa del sitio predeterminado para ASP.NET.The XmlSiteMapProvider class is derived from the SiteMapProvider class and is the default site map provider for ASP.NET. La clase XmlSiteMapProvider genera árboles de mapa del sitio a partir de archivos XML con la extensión de nombre de archivo .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
Herencia
Implementaciones

Comentarios

La XmlSiteMapProvider clase carga los datos del mapa del sitio desde un archivo XML que sigue a un esquema conocido.The XmlSiteMapProvider class loads site map data from an XML file that follows a known schema. Los datos del mapa del sitio están limitados por <siteMap> etiquetas y constan de <siteMapNode> etiquetas anidadas.The site map data is bounded by <siteMap> tags and consists of nested <siteMapNode> tags. Las clases y imponen dos restricciones SiteMapProvider XmlSiteMapProvider en la estructura de los datos del mapa del sitio:Two constraints are imposed by the SiteMapProvider and XmlSiteMapProvider classes on the structure of the site map data:

  • Solo puede existir un nodo raíz.Only one root node can exist.

  • En el caso de los SiteMapNode objetos que especifican direcciones URL, las direcciones URL deben ser únicas dentro del ámbito del proveedor.For SiteMapNode objects that specify URLs, the URLs must be unique within the scope of the provider. (Para los nodos que no especifican direcciones URL, todas las claves deben ser únicas).(For nodes that do not specify URLs, all keys must be unique.)

En el ejemplo de código siguiente se muestra un ejemplo de un archivo XML que se puede usar con 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>  

XmlSiteMapProviderEs el proveedor predeterminado para ASP.net y lee datos XML de un archivo denominado Web. sitemap que se encuentra dentro de la estructura de directorios de la aplicación 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. De forma predeterminada, el archivo Web. sitemap se encuentra en la raíz de la aplicación; sin embargo, si desea cambiar el nombre o la ubicación del archivo desde el que XmlSiteMapProvider carga los datos, puede invalidar la configuración predeterminada en el archivo 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. Al invalidar los valores de configuración predeterminados en el archivo de Web.config, puede personalizar el comportamiento de XmlSiteMapProvider para cada aplicación de ASP.net, según sea necesario.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.

En el ejemplo de código siguiente se muestra un ejemplo de archivo Web.config, donde XmlSiteMapProvider todavía se usa, pero se usa un archivo de mapa del sitio diferente.The following code example demonstrates an example Web.config file, where the XmlSiteMapProvider is still used, but a different site map file is used. Dado que todos los proveedores de un SiteMapProviderCollection objeto deben tener un nombre único, el que se especifica en el archivo Web.config usa un nombre distinto del predeterminado, pero también se establece como el proveedor predeterminado para que se use en lugar del XmlSiteMapProvider que se especifica en la configuración predeterminada de 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.

Nota

Puede cambiar el nombre del archivo de datos de navegación del sitio, pero no puede cambiar su extensión.You can change the name of the site navigation data file, but you cannot change its extension. El XmlSiteMapProvider solo Lee los datos de los archivos que se denominan con la extensión de nombre de archivo. 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>  

Constructores

XmlSiteMapProvider()

Crea una nueva instancia, sin nombre, de la clase XmlSiteMapProvider.Creates a new, unnamed, instance of the XmlSiteMapProvider class.

Propiedades

CurrentNode

Obtiene el objeto SiteMapNode que representa la página solicitada actualmente.Gets the SiteMapNode object that represents the currently requested page.

CurrentNode

Obtiene el objeto SiteMapNode que representa la página solicitada actualmente.Gets the SiteMapNode object that represents the currently requested page.

(Heredado de SiteMapProvider)
Description

Obtiene una descripción breve y fácil de comprender apropiada para mostrarla en las herramientas administrativas u otras interfaces de usuario.Gets a brief, friendly description suitable for display in administrative tools or other user interfaces (UIs).

(Heredado de ProviderBase)
EnableLocalization

Obtiene o establece un valor booleano que indica si se van a devolver valores localizados de los atributos SiteMapNode.Gets or sets a Boolean value indicating whether localized values of SiteMapNode attributes are returned.

(Heredado de SiteMapProvider)
Name

Obtiene el nombre descriptivo utilizado para hacer referencia al proveedor durante la configuración.Gets the friendly name used to refer to the provider during configuration.

(Heredado de ProviderBase)
ParentProvider

Obtiene o establece el objeto SiteMapProvider primario del proveedor actual.Gets or sets the parent SiteMapProvider object of the current provider.

(Heredado de SiteMapProvider)
ResourceKey

Obtiene o establece la clave de recurso utilizada para localizar los atributos SiteMapNode.Get or sets the resource key that is used for localizing SiteMapNode attributes.

(Heredado de SiteMapProvider)
RootNode

Obtiene el nodo raíz del mapa del sitio.Gets the root node of the site map.

RootProvider

Obtiene el objeto SiteMapProvider raíz de la jerarquía de proveedores actual.Gets the root SiteMapProvider object in the current provider hierarchy.

(Heredado de SiteMapProvider)
SecurityTrimmingEnabled

Obtiene un valor booleano que indica si un proveedor del mapa del sitio filtra los nodos del mapa del sitio basándose en el rol de un usuario.Gets a Boolean value indicating whether a site map provider filters site map nodes based on a user's role.

(Heredado de SiteMapProvider)

Métodos

AddNode(SiteMapNode)

Agrega un objeto SiteMapNode a la colección de nodos mantenida por el proveedor del mapa del sitio.Adds a SiteMapNode object to the node collection that is maintained by the site map provider.

(Heredado de SiteMapProvider)
AddNode(SiteMapNode, SiteMapNode)

Agrega un objeto SiteMapNode a las colecciones que mantiene el proveedor actual.Adds a SiteMapNode object to the collections that are maintained by the current provider.

AddProvider(String, SiteMapNode)

Vincula un proveedor del mapa del sitio secundario al proveedor actual.Links a child site map provider to the current provider.

BuildSiteMap()

Carga la información del mapa del sitio de un archivo XML y lo crea en memoria.Loads the site map information from an XML file and builds it in memory.

Clear()

Quita todos los elementos de las colecciones de nodos secundarios y primarios del mapa del sitio y proveedores del mapa del sitio cuyo seguimiento efectúa internamente el objeto XmlSiteMapProvider como parte de su 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 al supervisor de archivos del archivo Web.sitemap que el objeto XmlSiteMapProvider ya no requiere que se supervise el archivo.Notifies the file monitor of the Web.sitemap file that the XmlSiteMapProvider object no longer requires the file to be monitored.

Dispose(Boolean)

Notifica al supervisor de archivos del archivo Web.sitemap que el objeto XmlSiteMapProvider ya no requiere que se supervise el archivo.Notifies the file monitor of the Web.sitemap file that the XmlSiteMapProvider object no longer requires the file to be monitored. El método Dispose(Boolean) acepta un parámetro booleano que indica si el código de usuario llama al método.The Dispose(Boolean) method takes a Boolean parameter indicating whether the method is called by user code.

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.Determines whether the specified object is equal to the current object.

(Heredado de Object)
FindSiteMapNode(HttpContext)

Recupera un objeto SiteMapNode que representa la página solicitada actualmente mediante el objeto HttpContext especificado.Retrieves a SiteMapNode object that represents the currently requested page using the specified HttpContext object.

(Heredado de SiteMapProvider)
FindSiteMapNode(String)

Recupera un objeto SiteMapNode que representa la página en la dirección URL especificada.Retrieves a SiteMapNode object that represents the page at the specified URL.

FindSiteMapNodeFromKey(String)

Recupera un objeto SiteMapNode basándose en una clave especificada.Retrieves a SiteMapNode object based on a specified key.

GetChildNodes(SiteMapNode)

Devuelve los nodos secundarios del mapa del sitio.Returns the child nodes of the site map.

GetChildNodes(SiteMapNode)

Recupera los nodos secundarios del mapa del sitio de un objeto SiteMapNode concreto.Retrieves the child site map nodes of a specific SiteMapNode object.

(Heredado de StaticSiteMapProvider)
GetCurrentNodeAndHintAncestorNodes(Int32)

Proporciona un método de búsqueda optimizado para los proveedores del mapa del sitio en las operaciones de recuperación de un nodo para hallar la página solicitada actualmente y de extracción de los nodos primarios y antecesores del mapa del sitio correspondientes a la página actual.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.

(Heredado de SiteMapProvider)
GetCurrentNodeAndHintNeighborhoodNodes(Int32, Int32)

Proporciona un método de búsqueda optimizado para los proveedores del mapa del sitio en las operaciones de recuperación de un nodo para hallar la página solicitada actualmente y de extracción de los nodos del mapa del sitio próximos al nodo actual.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.

(Heredado de SiteMapProvider)
GetHashCode()

Sirve como la función hash predeterminada.Serves as the default hash function.

(Heredado de Object)
GetParentNode(SiteMapNode)

Devuelve el nodo primario del mapa del sitio.Returns the parent node of the site map.

GetParentNode(SiteMapNode)

Recupera el nodo primario del mapa del sitio de un objeto SiteMapNode concreto.Retrieves the parent site map node of a specific SiteMapNode object.

(Heredado de StaticSiteMapProvider)
GetParentNodeRelativeToCurrentNodeAndHintDownFromParent(Int32, Int32)

Proporciona un método de búsqueda optimizado para los proveedores del mapa del sitio al recuperar un nodo antecesor correspondiente a la página solicitada actualmente y extraer los nodos descendientes del antecesor.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.

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

Proporciona un método de búsqueda optimizado para los proveedores del mapa del sitio al recuperar un nodo antecesor para el objeto SiteMapNode especificado y extraer sus nodos secundarios.Provides an optimized lookup method for site map providers when retrieving an ancestor node for the specified SiteMapNode object and fetching its child nodes.

(Heredado de SiteMapProvider)
GetRootNodeCore()

Recupera el nodo de nivel superior de la estructura de datos del mapa del sitio actual.Retrieves the top-level node of the current site map data structure.

GetType()

Obtiene el Type de la instancia actual.Gets the Type of the current instance.

(Heredado de Object)
HintAncestorNodes(SiteMapNode, Int32)

Proporciona un método que los proveedores del mapa del sitio pueden reemplazar para realizar una recuperación optimizada de uno o más niveles de nodos primarios y antecesores, de manera relativa al 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.

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

Proporciona un método que los proveedores del mapa del sitio pueden reemplazar para realizar una recuperación optimizada de los nodos próximos al nodo 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.

(Heredado de SiteMapProvider)
Initialize(String, NameValueCollection)

Inicializa el objeto XmlSiteMapProvider.Initializes the XmlSiteMapProvider object. El método Initialize(String, NameValueCollection) realmente no crea un mapa del sitio, se limita a preparar el estado del objeto XmlSiteMapProvider para que lo haga.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 un valor booleano que indica si el usuario puede ver el objeto SiteMapNode especificado en el contexto indicado.Retrieves a Boolean value indicating whether the specified SiteMapNode object can be viewed by the user in the specified context.

(Heredado de SiteMapProvider)
MemberwiseClone()

Crea una copia superficial del Object actual.Creates a shallow copy of the current Object.

(Heredado de Object)
RemoveNode(SiteMapNode)

Quita el objeto SiteMapNode especificado de todas las colecciones de nodos de las que el proveedor realiza el seguimiento.Removes the specified SiteMapNode object from all node collections that are tracked by the provider.

RemoveProvider(String)

Quita un proveedor del mapa del sitio secundario vinculado de la jerarquía del proveedor actual.Removes a linked child site map provider from the hierarchy for the current provider.

ResolveSiteMapNode(HttpContext)

Genera el evento SiteMapResolve.Raises the SiteMapResolve event.

(Heredado de SiteMapProvider)
ToString()

Devuelve una cadena que representa el objeto actual.Returns a string that represents the current object.

(Heredado de Object)

Eventos

SiteMapResolve

Se produce cuando se llama a la propiedad CurrentNode.Occurs when the CurrentNode property is called.

(Heredado de SiteMapProvider)

Se aplica a

Consulte también