XmlSiteMapProvider XmlSiteMapProvider XmlSiteMapProvider XmlSiteMapProvider Class

Definizione

La classe XmlSiteMapProvider viene derivata dalla classe SiteMapProvider e rappresenta il provider della mappa del sito predefinito per ASP.NET.The XmlSiteMapProvider class is derived from the SiteMapProvider class and is the default site map provider for ASP.NET. La classe XmlSiteMapProvider genera strutture ad albero della mappa del sito da file XML con estensione 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
Ereditarietà
Implementazioni

Commenti

La XmlSiteMapProvider classe carica i dati della mappa del sito da un file XML che segue uno schema noto.The XmlSiteMapProvider class loads site map data from an XML file that follows a known schema. I dati della mappa del sito sono limitati <siteMap> da tag ed è costituito da tag annidati. <siteMapNode>The site map data is bounded by <siteMap> tags and consists of nested <siteMapNode> tags. Due vincoli vengono imposti dalle SiteMapProvider classi XmlSiteMapProvider e sulla struttura dei dati della mappa del sito:Two constraints are imposed by the SiteMapProvider and XmlSiteMapProvider classes on the structure of the site map data:

  • Può esistere un solo nodo radice.Only one root node can exist.

  • Per SiteMapNode gli oggetti che specificano gli URL, gli URL devono essere univoci all'interno dell'ambito del provider.For SiteMapNode objects that specify URLs, the URLs must be unique within the scope of the provider. Per i nodi che non specificano gli URL, tutte le chiavi devono essere univoche.(For nodes that do not specify URLs, all keys must be unique.)

Nell'esempio di codice riportato di seguito viene illustrato un esempio di file XML che può essere XmlSiteMapProviderutilizzato con.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>  

XmlSiteMapProvider È il provider predefinito per ASP.NET e legge i dati XML da un file denominato Web. Sitemap che si trova all'interno della struttura di directory dell'applicazione 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. Per impostazione predefinita, il file Web. Sitemap si trova nella radice dell'applicazione; Tuttavia, se si desidera modificare il nome o il percorso del file da cui carica i XmlSiteMapProvider dati, è possibile sostituire la configurazione predefinita nel file 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. Eseguendo l'override delle impostazioni di configurazione predefinite nel file Web. config, è possibile personalizzare il comportamento di XmlSiteMapProvider per ogni applicazione ASP.NET, se necessario.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.

Nell'esempio di codice riportato di seguito viene illustrato un file Web. config XmlSiteMapProvider di esempio, in cui l'oggetto è ancora in uso, ma viene utilizzato un file della mappa del sito diverso.The following code example demonstrates an example Web.config file, where the XmlSiteMapProvider is still used, but a different site map file is used. Poiché tutti i provider in SiteMapProviderCollection un oggetto devono essere denominati in modo univoco, quello specificato nel file Web. config usa un nome diverso da quello predefinito, ma viene anche impostato come provider predefinito in modo che venga usato al posto XmlSiteMapProvider di quello specificato in th e configurazione ASP.NET predefinita.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

È possibile modificare il nome del file di dati di navigazione del sito, ma non è possibile modificarne l'estensione.You can change the name of the site navigation data file, but you cannot change its extension. Legge XmlSiteMapProvider solo i dati dei file denominati con l'estensione del nome file. 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>  

Costruttori

XmlSiteMapProvider() XmlSiteMapProvider() XmlSiteMapProvider() XmlSiteMapProvider()

Crea una nuova istanza senza nome della classe XmlSiteMapProvider.Creates a new, unnamed, instance of the XmlSiteMapProvider class.

Proprietà

CurrentNode CurrentNode CurrentNode CurrentNode

Ottiene l'oggetto SiteMapNode che rappresenta la pagina attualmente richiesta.Gets the SiteMapNode object that represents the currently requested page.

Description Description Description Description

Ottiene una breve descrizione di facile comprensione che è possibile visualizzare in strumenti di amministrazione o in altre interfacce utente (UI, User Interface).Gets a brief, friendly description suitable for display in administrative tools or other user interfaces (UIs).

(Inherited from ProviderBase)
EnableLocalization EnableLocalization EnableLocalization EnableLocalization

Ottiene o imposta un valore booleano che indica se i valori personalizzati degli attributi SiteMapNode vengono restituiti.Gets or sets a Boolean value indicating whether localized values of SiteMapNode attributes are returned.

(Inherited from SiteMapProvider)
Name Name Name Name

Ottiene il nome descrittivo utilizzato per fare riferimento al provider durante la configurazione.Gets the friendly name used to refer to the provider during configuration.

(Inherited from ProviderBase)
ParentProvider ParentProvider ParentProvider ParentProvider

Ottiene o imposta l'oggetto SiteMapProvider padre del provider corrente.Gets or sets the parent SiteMapProvider object of the current provider.

(Inherited from SiteMapProvider)
ResourceKey ResourceKey ResourceKey ResourceKey

Ottiene o imposta la chiave di risorsa usata per localizzare gli attributi di SiteMapNode.Get or sets the resource key that is used for localizing SiteMapNode attributes.

(Inherited from SiteMapProvider)
RootNode RootNode RootNode RootNode

Ottiene il nodo radice della mappa del sito.Gets the root node of the site map.

RootProvider RootProvider RootProvider RootProvider

Ottiene l'oggetto SiteMapProvider radice della gerarchia di provider corrente.Gets the root SiteMapProvider object in the current provider hierarchy.

(Inherited from SiteMapProvider)
SecurityTrimmingEnabled SecurityTrimmingEnabled SecurityTrimmingEnabled SecurityTrimmingEnabled

Ottiene un valore booleano che indica se un provider della mappa del sito filtra i nodi della mappa del sito in base al ruolo dell'utente.Gets a Boolean value indicating whether a site map provider filters site map nodes based on a user's role.

(Inherited from SiteMapProvider)

Metodi

AddNode(SiteMapNode) AddNode(SiteMapNode) AddNode(SiteMapNode) AddNode(SiteMapNode)

Aggiunge un oggetto SiteMapNode alla raccolta dei nodi gestiti dal provider della mappa del sito.Adds a SiteMapNode object to the node collection that is maintained by the site map provider.

(Inherited from SiteMapProvider)
AddNode(SiteMapNode, SiteMapNode) AddNode(SiteMapNode, SiteMapNode) AddNode(SiteMapNode, SiteMapNode) AddNode(SiteMapNode, SiteMapNode)

Aggiunge un oggetto SiteMapNode agli insiemi gestiti dal provider corrente.Adds a SiteMapNode object to the collections that are maintained by the current provider.

AddProvider(String, SiteMapNode) AddProvider(String, SiteMapNode) AddProvider(String, SiteMapNode) AddProvider(String, SiteMapNode)

Collega un provider figlio della mappa del sito al provider corrente.Links a child site map provider to the current provider.

BuildSiteMap() BuildSiteMap() BuildSiteMap() BuildSiteMap()

Carica le informazioni della mappa del sito da un file XML e le compila in memoria.Loads the site map information from an XML file and builds it in memory.

Clear() Clear() Clear() Clear()

Rimuove tutti gli elementi negli insiemi di nodi figlio e padre della mappa del sito e di provider della mappa del sito, che l'oggetto XmlSiteMapProvider traccia internamente come parte del relativo stato.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() Dispose() Dispose() Dispose()

Notifica al monitor di file del file Web.sitemap che l'oggetto XmlSiteMapProvider non richiede più il monitoraggio del file.Notifies the file monitor of the Web.sitemap file that the XmlSiteMapProvider object no longer requires the file to be monitored.

Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

Notifica al monitor di file del file Web.sitemap che l'oggetto XmlSiteMapProvider non richiede più il monitoraggio del file.Notifies the file monitor of the Web.sitemap file that the XmlSiteMapProvider object no longer requires the file to be monitored. Il metodo Dispose(Boolean) accetta un parametro booleano che indica se il metodo viene chiamato da un codice utente.The Dispose(Boolean) method takes a Boolean parameter indicating whether the method is called by user code.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.Determines whether the specified object is equal to the current object.

(Inherited from Object)
FindSiteMapNode(HttpContext) FindSiteMapNode(HttpContext) FindSiteMapNode(HttpContext) FindSiteMapNode(HttpContext)

Recupera un oggetto SiteMapNode che rappresenta la pagina attualmente richiesta usando l'oggetto HttpContext specificato.Retrieves a SiteMapNode object that represents the currently requested page using the specified HttpContext object.

(Inherited from SiteMapProvider)
FindSiteMapNode(String) FindSiteMapNode(String) FindSiteMapNode(String) FindSiteMapNode(String)

Recupera un oggetto SiteMapNode che rappresenta la pagina nell'URL specificato.Retrieves a SiteMapNode object that represents the page at the specified URL.

FindSiteMapNodeFromKey(String) FindSiteMapNodeFromKey(String) FindSiteMapNodeFromKey(String) FindSiteMapNodeFromKey(String)

Recupera un oggetto SiteMapNode a partire da una chiave specificata.Retrieves a SiteMapNode object based on a specified key.

GetChildNodes(SiteMapNode) GetChildNodes(SiteMapNode) GetChildNodes(SiteMapNode) GetChildNodes(SiteMapNode)

Restituisce i nodi figlio della mappa del sito.Returns the child nodes of the site map.

GetCurrentNodeAndHintAncestorNodes(Int32) GetCurrentNodeAndHintAncestorNodes(Int32) GetCurrentNodeAndHintAncestorNodes(Int32) GetCurrentNodeAndHintAncestorNodes(Int32)

Specifica un metodo di ricerca ottimizzato per i provider della mappa del sito al momento del recupero del nodo per la pagina richiesta attualmente e dei nodi padre e predecessore per la mappa del sito per la pagina corrente.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.

(Inherited from SiteMapProvider)
GetCurrentNodeAndHintNeighborhoodNodes(Int32, Int32) GetCurrentNodeAndHintNeighborhoodNodes(Int32, Int32) GetCurrentNodeAndHintNeighborhoodNodes(Int32, Int32) GetCurrentNodeAndHintNeighborhoodNodes(Int32, Int32)

Specifica un metodo di ricerca ottimizzato per i provider della mappa del sito al momento del recupero del nodo per la pagina richiesta attualmente e dei nodi della mappa del sito in prossimità del nodo corrente.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.

(Inherited from SiteMapProvider)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Funge da funzione hash predefinita.Serves as the default hash function.

(Inherited from Object)
GetParentNode(SiteMapNode) GetParentNode(SiteMapNode) GetParentNode(SiteMapNode) GetParentNode(SiteMapNode)

Restituisce il nodo padre della mappa del sito.Returns the parent node of the site map.

GetParentNodeRelativeToCurrentNodeAndHintDownFromParent(Int32, Int32) GetParentNodeRelativeToCurrentNodeAndHintDownFromParent(Int32, Int32) GetParentNodeRelativeToCurrentNodeAndHintDownFromParent(Int32, Int32) GetParentNodeRelativeToCurrentNodeAndHintDownFromParent(Int32, Int32)

Specifica un metodo di ricerca ottimizzato per i provider della mappa del sito al momento del recupero di un nodo predecessore per la pagina richiesta attualmente e dei nodi discendente per il predecessore.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.

(Inherited from SiteMapProvider)
GetParentNodeRelativeToNodeAndHintDownFromParent(SiteMapNode, Int32, Int32) GetParentNodeRelativeToNodeAndHintDownFromParent(SiteMapNode, Int32, Int32) GetParentNodeRelativeToNodeAndHintDownFromParent(SiteMapNode, Int32, Int32) GetParentNodeRelativeToNodeAndHintDownFromParent(SiteMapNode, Int32, Int32)

Specifica un metodo di ricerca ottimizzato per i provider della mappa del sito quando si recupera un nodo predecessore per l'oggetto SiteMapNode specificato insieme ai relativi nodi figlio.Provides an optimized lookup method for site map providers when retrieving an ancestor node for the specified SiteMapNode object and fetching its child nodes.

(Inherited from SiteMapProvider)
GetRootNodeCore() GetRootNodeCore() GetRootNodeCore() GetRootNodeCore()

Recupera il nodo di primo livello della struttura dei dati della mappa del sito corrente.Retrieves the top-level node of the current site map data structure.

GetType() GetType() GetType() GetType()

Ottiene l'oggetto Type dell'istanza corrente.Gets the Type of the current instance.

(Inherited from Object)
HintAncestorNodes(SiteMapNode, Int32) HintAncestorNodes(SiteMapNode, Int32) HintAncestorNodes(SiteMapNode, Int32) HintAncestorNodes(SiteMapNode, Int32)

Specifica un metodo del quale i provider della mappa del sito possono eseguire l'override per un recupero ottimizzato di uno o più livelli di nodi padre e predecessore, in relazione all'oggetto SiteMapNode specificato.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.

(Inherited from SiteMapProvider)
HintNeighborhoodNodes(SiteMapNode, Int32, Int32) HintNeighborhoodNodes(SiteMapNode, Int32, Int32) HintNeighborhoodNodes(SiteMapNode, Int32, Int32) HintNeighborhoodNodes(SiteMapNode, Int32, Int32)

Specifica un metodo del quale i provider della mappa del sito possono eseguire l'override per un recupero ottimizzato dei nodi trovati in prossimità del nodo specificato.Provides a method that site map providers can override to perform an optimized retrieval of nodes found in the proximity of the specified node.

(Inherited from SiteMapProvider)
Initialize(String, NameValueCollection) Initialize(String, NameValueCollection) Initialize(String, NameValueCollection) Initialize(String, NameValueCollection)

Inizializza l'oggetto XmlSiteMapProvider.Initializes the XmlSiteMapProvider object. Il metodo Initialize(String, NameValueCollection) non compila realmente una mappa del sito, prepara soltanto lo stato della classe XmlSiteMapProvider all'esecuzione di questa operazione.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) IsAccessibleToUser(HttpContext, SiteMapNode) IsAccessibleToUser(HttpContext, SiteMapNode) IsAccessibleToUser(HttpContext, SiteMapNode)

Recupera un valore booleano che indica se l'oggetto SiteMapNode specificato può essere visualizzato dall'utente nel contesto specifico.Retrieves a Boolean value indicating whether the specified SiteMapNode object can be viewed by the user in the specified context.

(Inherited from SiteMapProvider)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.Creates a shallow copy of the current Object.

(Inherited from Object)
RemoveNode(SiteMapNode) RemoveNode(SiteMapNode) RemoveNode(SiteMapNode) RemoveNode(SiteMapNode)

Rimuove l'oggetto SiteMapNode specificato da tutti gli insiemi di nodi tracciati dal provider.Removes the specified SiteMapNode object from all node collections that are tracked by the provider.

RemoveProvider(String) RemoveProvider(String) RemoveProvider(String) RemoveProvider(String)

Rimuove un provider figlio collegato della mappa del sito dalla gerarchia del provider corrente.Removes a linked child site map provider from the hierarchy for the current provider.

ResolveSiteMapNode(HttpContext) ResolveSiteMapNode(HttpContext) ResolveSiteMapNode(HttpContext) ResolveSiteMapNode(HttpContext)

Genera l'evento SiteMapResolve.Raises the SiteMapResolve event.

(Inherited from SiteMapProvider)
ToString() ToString() ToString() ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.Returns a string that represents the current object.

(Inherited from Object)

Eventi

SiteMapResolve SiteMapResolve SiteMapResolve SiteMapResolve

Si verifica quando viene chiamata la proprietà CurrentNode.Occurs when the CurrentNode property is called.

(Inherited from SiteMapProvider)

Si applica a

Vedi anche