XmlSiteMapProvider Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
La clase XmlSiteMapProvider se deriva de la clase /SiteMapProvider y es el proveedor de mapa de sitio predeterminado para ASP.NET. La XmlSiteMapProvider clase genera árboles de mapa del sitio a partir de archivos XML con la extensión de nombre de archivo .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 datos de mapa de sitio desde un archivo XML que sigue un esquema conocido. Los datos del mapa del sitio están enlazados por <siteMap> etiquetas y constan de etiquetas anidadas <siteMapNode> . Las clases y XmlSiteMapProvider imponen SiteMapProvider dos restricciones en la estructura de los datos del mapa del sitio:
Solo puede existir un nodo raíz.
Para SiteMapNode los objetos que especifican direcciones URL, las direcciones URL deben ser únicas dentro del ámbito del proveedor. (Para los nodos que no especifican direcciones URL, todas las claves deben ser únicas).
En el ejemplo de código siguiente se muestra un ejemplo de un archivo XML que se puede usar con .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>
El XmlSiteMapProvider es el proveedor predeterminado de 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. 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 cargan XmlSiteMapProvider los datos, puede invalidar la configuración predeterminada en el archivo Web.config. Al invalidar los valores de configuración predeterminados en el archivo Web.config, puede adaptar el comportamiento de la XmlSiteMapProvider para cada aplicación de ASP.NET, según sea necesario.
En el ejemplo de código siguiente se muestra un ejemplo Web.config archivo, donde XmlSiteMapProvider todavía se usa , pero se usa un archivo de mapa de sitio diferente. Dado que todos los proveedores de un objeto SiteMapProviderCollection deben denominarse de forma única, el que se especifica en el archivo Web.config usa un nombre distinto del predeterminado, pero también se establece como proveedor predeterminado para que se use en lugar del XmlSiteMapProvider especificado en la configuración predeterminada ASP.NET.
Note
Puede cambiar el nombre del archivo de datos de navegación del sitio, pero no puede cambiar su extensión. El XmlSiteMapProvider único lee los datos de los archivos denominados con la extensión de nombre de archivo .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
| Nombre | Description |
|---|---|
| XmlSiteMapProvider() |
Crea una nueva instancia sin nombre de la XmlSiteMapProvider clase . |
Propiedades
| Nombre | Description |
|---|---|
| CurrentNode |
Obtiene el SiteMapNode objeto que representa la página solicitada actualmente. |
| CurrentNode |
Obtiene el SiteMapNode objeto que representa la página solicitada actualmente. (Heredado de SiteMapProvider) |
| Description |
Obtiene una breve descripción fácil de mostrar en herramientas administrativas u otras interfaces de usuario (UIs). (Heredado de ProviderBase) |
| EnableLocalization |
Obtiene o establece un valor booleano que indica si se devuelven valores localizados de SiteMapNode atributos. (Heredado de SiteMapProvider) |
| Name |
Obtiene el nombre descriptivo que se usa para hacer referencia al proveedor durante la configuración. (Heredado de ProviderBase) |
| ParentProvider |
Obtiene o establece el objeto primario SiteMapProvider del proveedor actual. (Heredado de SiteMapProvider) |
| ResourceKey |
Obtiene o establece la clave de recurso que se usa para localizar SiteMapNode atributos. (Heredado de SiteMapProvider) |
| RootNode |
Obtiene el nodo raíz del mapa del sitio. |
| RootProvider |
Obtiene el objeto raíz SiteMapProvider de la jerarquía del proveedor actual. (Heredado de SiteMapProvider) |
| SecurityTrimmingEnabled |
Obtiene un valor booleano que indica si un proveedor de mapa de sitio filtra los nodos de mapa de sitio en función del rol de un usuario. (Heredado de SiteMapProvider) |
Métodos
| Nombre | Description |
|---|---|
| AddNode(SiteMapNode, SiteMapNode) |
Agrega un SiteMapNode objeto a las colecciones que mantiene el proveedor actual. |
| AddNode(SiteMapNode) |
Agrega un SiteMapNode objeto a la colección de nodos que mantiene el proveedor de mapa de sitio. (Heredado de SiteMapProvider) |
| AddProvider(String, SiteMapNode) |
Vincula un proveedor de mapa de sitio secundario al proveedor actual. |
| BuildSiteMap() |
Carga la información del mapa del sitio de un archivo XML y la compila en memoria. |
| Clear() |
Quita todos los elementos de las colecciones de nodos de mapa de sitio secundarios y primarios y proveedores de mapa de sitio que el XmlSiteMapProvider objeto realiza un seguimiento interno como parte de su estado. |
| Dispose() |
Notifica al monitor de archivos del archivo Web.sitemap que el XmlSiteMapProvider objeto ya no requiere que se supervise el archivo. |
| Dispose(Boolean) |
Notifica al monitor de archivos del archivo Web.sitemap que el XmlSiteMapProvider objeto ya no requiere que se supervise el archivo. El Dispose(Boolean) método toma un parámetro booleano que indica si el código de usuario llama al método. |
| Equals(Object) |
Determina si el objeto especificado es igual al objeto actual. (Heredado de Object) |
| FindSiteMapNode(HttpContext) |
Recupera un SiteMapNode objeto que representa la página solicitada actualmente mediante el objeto especificado HttpContext . (Heredado de SiteMapProvider) |
| FindSiteMapNode(String) |
Recupera un SiteMapNode objeto que representa la página en la dirección URL especificada. |
| FindSiteMapNodeFromKey(String) |
Recupera un SiteMapNode objeto basado en una clave especificada. |
| GetChildNodes(SiteMapNode) |
Devuelve los nodos secundarios del mapa del sitio. |
| GetChildNodes(SiteMapNode) |
Recupera los nodos de mapa de sitio secundarios de un objeto específico SiteMapNode . (Heredado de StaticSiteMapProvider) |
| GetCurrentNodeAndHintAncestorNodes(Int32) |
Proporciona un método de búsqueda optimizado para proveedores de mapas de sitio al recuperar el nodo de la página solicitada actualmente y capturar los nodos primarios y antecesores del mapa del sitio para la página actual. (Heredado de SiteMapProvider) |
| GetCurrentNodeAndHintNeighborhoodNodes(Int32, Int32) |
Proporciona un método de búsqueda optimizado para proveedores de mapas de sitio al recuperar el nodo de la página solicitada actualmente y capturar los nodos de mapa del sitio en la proximidad del nodo actual. (Heredado de SiteMapProvider) |
| GetHashCode() |
Actúa como la función hash predeterminada. (Heredado de Object) |
| GetParentNode(SiteMapNode) |
Devuelve el nodo primario del mapa del sitio. |
| GetParentNode(SiteMapNode) |
Recupera el nodo de mapa del sitio primario de un objeto específico SiteMapNode . (Heredado de StaticSiteMapProvider) |
| GetParentNodeRelativeToCurrentNodeAndHintDownFromParent(Int32, Int32) |
Proporciona un método de búsqueda optimizado para proveedores de mapas de sitio al recuperar un nodo antecesor para la página solicitada actualmente y capturar los nodos descendientes para el antecesor. (Heredado de SiteMapProvider) |
| GetParentNodeRelativeToNodeAndHintDownFromParent(SiteMapNode, Int32, Int32) |
Proporciona un método de búsqueda optimizado para proveedores de mapas de sitio al recuperar un nodo antecesor para el objeto especificado SiteMapNode y capturar sus nodos secundarios. (Heredado de SiteMapProvider) |
| GetRootNodeCore() |
Recupera el nodo de nivel superior de la estructura de datos del mapa del sitio actual. |
| GetType() |
Obtiene el Type de la instancia actual. (Heredado de Object) |
| HintAncestorNodes(SiteMapNode, Int32) |
Proporciona un método que los proveedores de mapas de sitio pueden invalidar para realizar una recuperación optimizada de uno o varios niveles de nodos primarios y antecesores, en relación con el objeto especificado SiteMapNode . (Heredado de SiteMapProvider) |
| HintNeighborhoodNodes(SiteMapNode, Int32, Int32) |
Proporciona un método que los proveedores de mapas de sitio pueden invalidar para realizar una recuperación optimizada de los nodos que se encuentran en la proximidad del nodo especificado. (Heredado de SiteMapProvider) |
| Initialize(String, NameValueCollection) |
Inicializa el objeto XmlSiteMapProvider. El Initialize(String, NameValueCollection) método no crea realmente un mapa de sitio, solo prepara el estado de para XmlSiteMapProvider hacerlo. |
| IsAccessibleToUser(HttpContext, SiteMapNode) |
Recupera un valor booleano que indica si el usuario puede ver el objeto especificado SiteMapNode en el contexto especificado. (Heredado de SiteMapProvider) |
| MemberwiseClone() |
Crea una copia superficial del Objectactual. (Heredado de Object) |
| RemoveNode(SiteMapNode) |
Quita el objeto especificado SiteMapNode de todas las colecciones de nodos cuyo seguimiento realiza el proveedor. |
| RemoveProvider(String) |
Quita un proveedor de mapa de sitio secundario vinculado de la jerarquía del proveedor actual. |
| ResolveSiteMapNode(HttpContext) |
Genera el evento SiteMapResolve. (Heredado de SiteMapProvider) |
| ToString() |
Devuelve una cadena que representa el objeto actual. (Heredado de Object) |
Eventos
| Nombre | Description |
|---|---|
| SiteMapResolve |
Se produce cuando se llama a la CurrentNode propiedad . (Heredado de SiteMapProvider) |