SiteMapProvider.RootProvider Proprietà

Definizione

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

public:
 virtual property System::Web::SiteMapProvider ^ RootProvider { System::Web::SiteMapProvider ^ get(); };
public virtual System.Web.SiteMapProvider RootProvider { get; }
member this.RootProvider : System.Web.SiteMapProvider
Public Overridable ReadOnly Property RootProvider As SiteMapProvider

Valore della proprietà

Oggetto SiteMapProvider che rappresenta il provider di primo livello della mappa del sito nella gerarchia di provider a cui appartiene il provider corrente.An SiteMapProvider that is the top-level site map provider in the provider hierarchy that the current provider belongs to.

Eccezioni

Esiste un riferimento circolare al provider corrente della mappa del sito.There is a circular reference to the current site map provider.

Esempi

Nell'esempio di codice seguente viene illustrato come implementare RootProvider la proprietà in una classe che implementa la SiteMapProvider classe astratta.The following code example demonstrates how to implement the RootProvider property in a class that implements the abstract SiteMapProvider class. SimpleTextSiteMapProvider Usa una logica semplice per determinare se il provider corrente fa parte di una gerarchia di provider.The SimpleTextSiteMapProvider uses simple logic to determine whether the current provider is part of a provider hierarchy. Se il provider fa parte di una gerarchia, usa la RootProvider proprietà per il provider padre.If the provider is part of a hierarchy, it uses the RootProvider property for the parent provider as its own. Se il provider non fa parte di una gerarchia, il provider è il proprio provider radice.If the provider is not part of a hierarchy, the provider is its own root provider.

Questo esempio di codice fa parte di un esempio più ampio fornito SiteMapProvider per la classe.This code example is part of a larger example provided for the SiteMapProvider class.

// Implement the ParentProvider property.
public override SiteMapProvider ParentProvider
{
  get
  {
    return parentSiteMapProvider;
  }
  set
  {
    parentSiteMapProvider = value;
  }
}

// Implement the RootProvider property.
public override SiteMapProvider RootProvider
{
  get
  {
    // If the current instance belongs to a provider hierarchy, it
    // cannot be the RootProvider. Rely on the ParentProvider.
    if (this.ParentProvider != null)
    {
      return ParentProvider.RootProvider;
    }
    // If the current instance does not have a ParentProvider, it is
    // not a child in a hierarchy, and can be the RootProvider.
    else
    {
      return this;
    }
  }
}
' Implement the ParentProvider property.
Public Overrides Property ParentProvider() As SiteMapProvider
  Get
    Return parentSiteMapProvider
  End Get
  Set(ByVal value As SiteMapProvider)
    parentSiteMapProvider = Value
  End Set
End Property

' Implement the RootProvider property.
Public Overrides ReadOnly Property RootProvider() As SiteMapProvider
  Get
    ' If the current instance belongs to a provider hierarchy, it
    ' cannot be the RootProvider. Rely on the ParentProvider.
    If Not (Me.ParentProvider Is Nothing) Then
      Return ParentProvider.RootProvider
      ' If the current instance does not have a ParentProvider, it is
      ' not a child in a hierarchy, and can be the RootProvider.
    Else
      Return Me
    End If
  End Get
End Property

Commenti

Tutte le classi che implementano la SiteMapProvider classe possono supportare il concetto di gerarchia del provider della mappa del sito.All classes that implement the SiteMapProvider class can support the concept of a site map provider hierarchy. Tutte le relazioni gerarchiche tra i provider vengono mantenute al di SiteMapProviderCollection fuori dell'ambito di una raccolta da parte dei provider.Any hierarchical relationships between providers are maintained outside the scope of a SiteMapProviderCollection collection by the providers themselves. Per un esempio di gerarchia del provider funzionale, vedere XmlSiteMapProvider.For an example of a functional provider hierarchy, see XmlSiteMapProvider.

Si applica a

Vedi anche