Partager via


XmlSiteMapProvider Classe

Définition

La classe XmlSiteMapProvider est dérivée de la classe SiteMapProvider et est le fournisseur de plan de site par défaut pour ASP.NET. La classe XmlSiteMapProvider génère des arborescences de plans de site à partir de fichiers XML avec l'extension de nom de fichier .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
Héritage
Implémente

Remarques

La XmlSiteMapProvider classe charge les données de plan de site à partir d’un fichier XML qui suit un schéma connu. Les données de plan de site sont limitées par <siteMap> des balises et se composent d’étiquettes imbriquées <siteMapNode> . Deux contraintes sont imposées par les SiteMapProvider classes et XmlSiteMapProvider sur la structure des données de plan de site :

  • Un seul nœud racine peut exister.

  • Pour SiteMapNode les objets qui spécifient des URL, les URL doivent être uniques dans l’étendue du fournisseur. (Pour les nœuds qui ne spécifient pas d’URL, toutes les clés doivent être uniques.)

L’exemple de code suivant montre un exemple de fichier XML qui peut être utilisé avec .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>  

XmlSiteMapProvider est le fournisseur par défaut pour ASP.NET et il lit les données XML à partir d’un fichier nommé Web.sitemap qui se trouve dans la structure de répertoires de l’application ASP.NET. Par défaut, le fichier Web.sitemap se trouve à la racine de l’application ; Toutefois, si vous souhaitez modifier le nom ou l’emplacement du fichier à partir duquel les XmlSiteMapProvider données sont chargées, vous pouvez remplacer la configuration par défaut dans votre fichier Web.config. En remplaçant les paramètres de configuration par défaut dans votre fichier Web.config, vous pouvez adapter le comportement de pour XmlSiteMapProvider chaque application ASP.NET, si nécessaire.

L’exemple de code suivant illustre un exemple Web.config fichier, où est XmlSiteMapProvider toujours utilisé, mais où un autre fichier de plan de site est utilisé. Étant donné que tous les fournisseurs d’un SiteMapProviderCollection objet doivent être nommés de manière unique, celui qui est spécifié dans le fichier Web.config utilise un nom autre que celui par défaut, mais est également défini comme fournisseur par défaut afin qu’il soit utilisé au lieu de celui XmlSiteMapProvider spécifié dans la configuration de ASP.NET par défaut.

Notes

Vous pouvez modifier le nom du fichier de données de navigation du site, mais vous ne pouvez pas modifier son extension. Le XmlSiteMapProvider lit uniquement les données des fichiers nommés avec l’extension de nom de fichier .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>  

Constructeurs

XmlSiteMapProvider()

Crée une nouvelle instance sans nom de la classe XmlSiteMapProvider.

Propriétés

CurrentNode

Obtient l'objet SiteMapNode qui représente la page actuellement demandée.

CurrentNode

Obtient l'objet SiteMapNode qui représente la page actuellement demandée.

(Hérité de SiteMapProvider)
Description

Obtient une description brève et conviviale qui peut s'afficher dans les outils d'administration ou d'autres interfaces utilisateur.

(Hérité de ProviderBase)
EnableLocalization

Obtient ou définit une valeur Boolean qui indique si des valeurs localisées des attributs SiteMapNode sont retournées.

(Hérité de SiteMapProvider)
Name

Obtient le nom convivial qui référence le fournisseur au cours de la configuration.

(Hérité de ProviderBase)
ParentProvider

Obtient ou définit l'objet SiteMapProvider parent du fournisseur actuel.

(Hérité de SiteMapProvider)
ResourceKey

Obtient ou définit la clé de ressource utilisée pour localiser des attributs SiteMapNode.

(Hérité de SiteMapProvider)
RootNode

Obtient le nœud racine du plan de site.

RootProvider

Obtient l'objet SiteMapProvider racine dans la hiérarchie de fournisseur actuelle.

(Hérité de SiteMapProvider)
SecurityTrimmingEnabled

Obtient une valeur Boolean qui indique si un fournisseur de plan de site filtre ou non des nœuds en fonction du rôle d'un utilisateur.

(Hérité de SiteMapProvider)

Méthodes

AddNode(SiteMapNode)

Ajoute un objet SiteMapNode à la collection de nœuds gérée par le fournisseur de plan de site.

(Hérité de SiteMapProvider)
AddNode(SiteMapNode, SiteMapNode)

Ajoute un objet SiteMapNode aux collections gérées par le fournisseur actuel.

AddProvider(String, SiteMapNode)

Lie un fournisseur de plan de site enfant au fournisseur actuel.

BuildSiteMap()

Charge les informations de plan de site à partir d'un fichier XML et les génère en mémoire.

Clear()

Supprime tous les éléments dans les collections de nœuds de plan de site enfants et parents et les fournisseurs de plan de site dont l'objet XmlSiteMapProvider effectue le suivi en interne dans le cadre de son état.

Dispose()

Avertit le programme de contrôle de fichiers du fichier Web.sitemap que l'objet XmlSiteMapProvider ne requiert plus le contrôle du fichier.

Dispose(Boolean)

Avertit le programme de contrôle de fichiers du fichier Web.sitemap que l'objet XmlSiteMapProvider ne requiert plus le contrôle du fichier. La méthode Dispose(Boolean) accepte un paramètre Boolean qui indique si la méthode est appelée par du code utilisateur.

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
FindSiteMapNode(HttpContext)

Récupère un objet SiteMapNode qui représente la page actuellement demandée à l'aide de l'objet HttpContext spécifié.

(Hérité de SiteMapProvider)
FindSiteMapNode(String)

Récupère un objet SiteMapNode qui représente la page à l'URL spécifiée.

FindSiteMapNodeFromKey(String)

Récupère un objet SiteMapNode selon une clé spécifiée.

GetChildNodes(SiteMapNode)

Retourne les nœuds enfants du plan de site.

GetChildNodes(SiteMapNode)

Récupère les nœuds de plan de site enfants d'un objet SiteMapNode spécifique.

(Hérité de StaticSiteMapProvider)
GetCurrentNodeAndHintAncestorNodes(Int32)

Fournit une méthode de recherche optimisée pour les fournisseurs de plan de site lors de la récupération du nœud pour la page actuellement demandée et lors de l'extraction des nœuds de plan de site parents et ancêtres de la page actuelle.

(Hérité de SiteMapProvider)
GetCurrentNodeAndHintNeighborhoodNodes(Int32, Int32)

Fournit une méthode de recherche optimisée aux fournisseurs de plan de site lors de la récupération du nœud pour la page actuellement demandée et lors de l'extraction de nœuds de plan de site situés à proximité du nœud actuel.

(Hérité de SiteMapProvider)
GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetParentNode(SiteMapNode)

Retourne le nœud parent du plan de site.

GetParentNode(SiteMapNode)

Récupère le nœud de plan de site parent d'un objet SiteMapNode spécifique.

(Hérité de StaticSiteMapProvider)
GetParentNodeRelativeToCurrentNodeAndHintDownFromParent(Int32, Int32)

Fournit une méthode de recherche optimisée pour les fournisseurs de plan de site lors de la récupération d'un nœud ancêtre pour la page actuellement demandée et lors de l'extraction des nœuds descendants pour l'ancêtre.

(Hérité de SiteMapProvider)
GetParentNodeRelativeToNodeAndHintDownFromParent(SiteMapNode, Int32, Int32)

Fournit une méthode de recherche optimisée pour les fournisseurs de plan de site lors de la récupération d'un nœud ancêtre pour l'objet SiteMapNode spécifié et lors de l'extraction de ses nœuds enfants.

(Hérité de SiteMapProvider)
GetRootNodeCore()

Récupère le nœud de haut niveau de la structure de données du plan de site en cours.

GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
HintAncestorNodes(SiteMapNode, Int32)

Fournit une méthode que les fournisseurs de plan de site peuvent substituer pour exécuter une récupération optimisée d'un ou plusieurs niveaux de nœuds parents et ancêtres relatifs à l'objet SiteMapNode spécifié.

(Hérité de SiteMapProvider)
HintNeighborhoodNodes(SiteMapNode, Int32, Int32)

Fournit une méthode que les fournisseurs de plan de site peuvent substituer pour exécuter une récupération optimisée des nœuds trouvés à proximité du nœud spécifié.

(Hérité de SiteMapProvider)
Initialize(String, NameValueCollection)

Initialise l'objet XmlSiteMapProvider. La méthode Initialize(String, NameValueCollection) ne génère pas réellement de plan de site ; elle prépare seulement l'état de XmlSiteMapProvider à cette fin.

IsAccessibleToUser(HttpContext, SiteMapNode)

Récupère une valeur Boolean qui indique si l'objet SiteMapNode spécifié peut être affiché par l'utilisateur dans le contexte spécifié.

(Hérité de SiteMapProvider)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
RemoveNode(SiteMapNode)

Supprime l'objet SiteMapNode spécifié de toutes les collections de nœuds suivies par le fournisseur.

RemoveProvider(String)

Supprime un fournisseur de plan de site enfant lié de la hiérarchie pour le fournisseur actuel.

ResolveSiteMapNode(HttpContext)

Déclenche l’événement SiteMapResolve.

(Hérité de SiteMapProvider)
ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)

Événements

SiteMapResolve

Se produit lorsque la propriété CurrentNode est appelée.

(Hérité de SiteMapProvider)

S’applique à

Voir aussi