XmlSiteMapProvider Klasse

Definition

Die XmlSiteMapProvider-Klasse ist von der SiteMapProvider-Klasse abgeleitet und stellt den Standard-Siteübersichtsanbieter für ASP.NET dar. Die XmlSiteMapProvider-Klasse generiert Siteübersichtsstrukturen aus XML-Dateien, die die Dateinamenerweiterung .sitemap aufweisen.

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
Vererbung
Implementiert

Hinweise

Die XmlSiteMapProvider -Klasse lädt Siteübersichtsdaten aus einer XML-Datei, die einem bekannten Schema folgt. Die Siteübersichtsdaten sind durch <siteMap> Tags begrenzt und bestehen aus geschachtelten <siteMapNode> Tags. Zwei Einschränkungen werden von den SiteMapProvider Klassen und XmlSiteMapProvider für die Struktur der Siteübersichtsdaten auferlegt:

  • Es kann nur ein Stammknoten vorhanden sein.

  • Bei SiteMapNode Objekten, die URLs angeben, müssen die URLs innerhalb des Bereichs des Anbieters eindeutig sein. (Für Knoten, die keine URLs angeben, müssen alle Schlüssel eindeutig sein.)

Das folgende Codebeispiel zeigt ein Beispiel für eine XML-Datei, die mit XmlSiteMapProviderverwendet werden kann.

<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>  

Ist XmlSiteMapProvider der Standardanbieter für ASP.NET und liest XML-Daten aus einer Datei namens Web.sitemap, die sich in der Verzeichnisstruktur der ASP.NET-Anwendung befindet. Standardmäßig befindet sich die Datei Web.sitemap im Stammverzeichnis der Anwendung. Wenn Sie jedoch den Namen oder Speicherort der Datei ändern möchten, aus der die XmlSiteMapProvider Daten geladen werden, können Sie die Standardkonfiguration in Ihrer Web.config-Datei überschreiben. Durch Überschreiben der Standardkonfigurationseinstellungen in Ihrer Web.config-Datei können Sie das Verhalten der XmlSiteMapProvider für jede ASP.NET Anwendung nach Bedarf anpassen.

Das folgende Codebeispiel veranschaulicht ein Beispiel Web.config Datei, in der weiterhin XmlSiteMapProvider verwendet wird, aber eine andere Siteübersichtsdatei verwendet wird. Da alle Anbieter in einem SiteMapProviderCollection -Objekt eindeutig benannt werden müssen, verwendet der in der Web.config-Datei angegebene Anbieter einen anderen Namen als den Standard, wird aber auch als Standardanbieter festgelegt, sodass er anstelle des verwendet wird, das XmlSiteMapProvider in der Standardkonfiguration ASP.NET angegeben ist.

Hinweis

Sie können den Namen der Websitenavigationsdatendatei ändern, die Erweiterung kann jedoch nicht geändert werden. Der XmlSiteMapProvider liest nur Daten aus Dateien, die mit der Dateinamenerweiterung .sitemap benannt sind.

<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>  

Konstruktoren

XmlSiteMapProvider()

Erstellt eine neue, unbenannte Instanz der XmlSiteMapProvider-Klasse.

Eigenschaften

CurrentNode

Ruft das SiteMapNode-Objekt ab, das die gerade angeforderte Seite darstellt.

CurrentNode

Ruft das SiteMapNode-Objekt ab, das die gerade angeforderte Seite darstellt.

(Geerbt von SiteMapProvider)
Description

Ruft eine kurze, benutzerfreundliche Beschreibung ab, die für die Anzeige in Verwaltungstools oder anderen Benutzeroberflächen geeignet ist.

(Geerbt von ProviderBase)
EnableLocalization

Ruft einen booleschen Wert ab, der angibt, ob lokalisierte Werte von SiteMapNode-Attributen zurückgegeben werden, oder legt diesen Wert fest.

(Geerbt von SiteMapProvider)
Name

Ruft den Anzeigennamen ab, der verwendet wird, um während der Konfiguration auf den Anbieter zu verweisen.

(Geerbt von ProviderBase)
ParentProvider

Ruft das übergeordnete SiteMapProvider-Objekt des aktuellen Anbieters ab oder legt dieses fest.

(Geerbt von SiteMapProvider)
ResourceKey

Ruft den Ressourcenschlüssel zum Lokalisieren von SiteMapNode-Attributen ab oder legt diesen fest.

(Geerbt von SiteMapProvider)
RootNode

Ruft den Stammknoten der Siteübersicht ab.

RootProvider

Ruft das SiteMapProvider-Stammobjekt in der aktuellen Anbieterhierarchie ab.

(Geerbt von SiteMapProvider)
SecurityTrimmingEnabled

Ruft einen booleschen Wert ab, der angibt, ob ein Siteübersichtsanbieter Siteübersichtsknoten auf seiner Benutzerrolle basierend filtert.

(Geerbt von SiteMapProvider)

Methoden

AddNode(SiteMapNode, SiteMapNode)

Fügt den vom aktuellen Anbieter verwalteten Auflistungen ein SiteMapNode-Objekt hinzu.

AddNode(SiteMapNode)

Fügt der vom Siteübersichtsanbieter verwalteten Knotenauflistung ein SiteMapNode-Objekt hinzu.

(Geerbt von SiteMapProvider)
AddProvider(String, SiteMapNode)

Verknüpft einen untergeordneten Siteübersichtsanbieter mit dem aktuellen Anbieter.

BuildSiteMap()

Lädt die Siteübersichtsinformationen aus einer XML-Datei und erstellt sie im Arbeitsspeicher.

Clear()

Entfernt alle Elemente aus den Auflistungen untergeordneter und übergeordneter Siteübersichtsknoten und Siteübersichtsanbieter, die vom XmlSiteMapProvider-Objekt gemäß seines Zustands intern nachverfolgt werden.

Dispose()

Benachrichtigt die Dateiüberwachung der Datei Web.sitemap darüber, dass das XmlSiteMapProvider-Objekt keine Überwachung der Datei mehr benötigt.

Dispose(Boolean)

Benachrichtigt die Dateiüberwachung der Datei Web.sitemap darüber, dass das XmlSiteMapProvider-Objekt keine Überwachung der Datei mehr benötigt. Die Dispose(Boolean)-Methode nimmt einen booleschen Parameter an, der angibt, ob die Methode von Benutzercode aufgerufen wird.

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
FindSiteMapNode(HttpContext)

Ruft ein SiteMapNode-Objekt ab, das die gerade angeforderte Seite mithilfe des angegebenen HttpContext-Objekts darstellt.

(Geerbt von SiteMapProvider)
FindSiteMapNode(String)

Ruft ein SiteMapNode-Objekt ab, das die Seite an der angegebenen URL darstellt.

FindSiteMapNodeFromKey(String)

Ruft ein SiteMapNode-Objekt auf Grundlage eines angegebenen Schlüssels ab.

GetChildNodes(SiteMapNode)

Gibt die untergeordneten Knoten der Siteübersicht zurück.

GetChildNodes(SiteMapNode)

Ruft die untergeordneten Siteübersichtsknoten eines bestimmten SiteMapNode-Objekts ab.

(Geerbt von StaticSiteMapProvider)
GetCurrentNodeAndHintAncestorNodes(Int32)

Stellt Siteübersichtsanbietern eine optimierte Nachschlagemethode zum Abrufen des Knotens für die gerade angeforderte Seite und zum Abrufen der mittelbar und unmittelbar übergeordneten Knoten für die aktuelle Seite bereit.

(Geerbt von SiteMapProvider)
GetCurrentNodeAndHintNeighborhoodNodes(Int32, Int32)

Stellt Siteübersichtsanbietern eine optimierte Nachschlagemethode zum Abrufen des Knotens für die gerade angeforderte Seite und zum Abrufen der Siteübersichtsknoten im unmittelbaren Umfeld des aktuellen Knotens bereit.

(Geerbt von SiteMapProvider)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetParentNode(SiteMapNode)

Gibt den übergeordneten Knoten des Lageplans zurück.

GetParentNode(SiteMapNode)

Ruft den übergeordneten Siteübersichtsknoten eines bestimmten SiteMapNode-Objekts ab.

(Geerbt von StaticSiteMapProvider)
GetParentNodeRelativeToCurrentNodeAndHintDownFromParent(Int32, Int32)

Stellt Siteübersichtsanbietern eine optimierte Nachschlagemethode zum Abrufen eines mittelbar übergeordneten Knotens für die gerade angeforderte Seite und zum Abrufen der mittelbar untergeordneten Knoten für den übergeordneten Knoten bereit.

(Geerbt von SiteMapProvider)
GetParentNodeRelativeToNodeAndHintDownFromParent(SiteMapNode, Int32, Int32)

Stellt Siteübersichtsanbietern eine optimierte Nachschlagemethode zum Abrufen eines mittelbar übergeordneten Knotens für das angegebene SiteMapNode-Objekt und zum Abrufen der unmittelbar untergeordneten Knoten bereit.

(Geerbt von SiteMapProvider)
GetRootNodeCore()

Ruft den Knoten der obersten Ebene der aktuellen Datenstruktur der Siteübersicht ab.

GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
HintAncestorNodes(SiteMapNode, Int32)

Stellt eine Methode bereit, die Siteübersichtsanbieter überschreiben können, um mindestens eine Ebene mittelbar und unmittelbar übergeordneter Knoten (relativ zum angegebenen SiteMapNode-Objekt) optimal abzurufen.

(Geerbt von SiteMapProvider)
HintNeighborhoodNodes(SiteMapNode, Int32, Int32)

Stellt eine Methode bereit, die Siteübersichtsanbieter überschreiben können, um einen optimierten Abruf von Knoten auszuführen, die im unmittelbaren Umfeld des angegebenen Knotens gefunden werden.

(Geerbt von SiteMapProvider)
Initialize(String, NameValueCollection)

Initialisiert das XmlSiteMapProvider-Objekt. Die Initialize(String, NameValueCollection)-Methode erstellt nicht direkt eine Siteübersicht. Sie bereitet lediglich den Zustand des XmlSiteMapProvider dafür vor.

IsAccessibleToUser(HttpContext, SiteMapNode)

Ruft einen booleschen Wert ab, der angibt, ob das angegebene SiteMapNode-Objekt vom Benutzer im angegebenen Kontext angezeigt werden kann.

(Geerbt von SiteMapProvider)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
RemoveNode(SiteMapNode)

Entfernt das angegebene SiteMapNode-Objekt aus allen Knotenauflistungen, die vom Anbieter verfolgt werden.

RemoveProvider(String)

Entfernt einen verknüpften untergeordneten Siteübersichtsanbieter aus der Hierarchie für den aktuellen Anbieter.

ResolveSiteMapNode(HttpContext)

Löst das SiteMapResolve-Ereignis aus.

(Geerbt von SiteMapProvider)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Ereignisse

SiteMapResolve

Tritt ein, wenn die CurrentNode-Eigenschaft aufgerufen wird.

(Geerbt von SiteMapProvider)

Gilt für:

Weitere Informationen