SiteMapProvider.RootProvider Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft das SiteMapProvider-Stammobjekt in der aktuellen Anbieterhierarchie ab.
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
Eigenschaftswert
Ein SiteMapProvider, der der Siteübersichtsanbieter der obersten Ebene in der Anbieterhierarchie ist, zu der der aktuelle Anbieter gehört.
Ausnahmen
Es ist ein Zirkelverweis auf den aktuellen Siteübersichtsanbieter vorhanden.
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie die Eigenschaft in einer Klasse implementiert wird, die die RootProvider abstrakte SiteMapProvider Klasse implementiert. Die SimpleTextSiteMapProvider
einfache Logik verwendet, um zu bestimmen, ob der aktuelle Anbieter Teil einer Anbieterhierarchie ist. Wenn der Anbieter Teil einer Hierarchie ist, verwendet er die RootProvider Eigenschaft für den übergeordneten Anbieter als eigenes. Wenn der Anbieter nicht Teil einer Hierarchie ist, ist der Anbieter ein eigener Stammanbieter.
Dieses Codebeispiel ist Teil eines größeren Beispiels, das für die SiteMapProvider Klasse bereitgestellt wird.
// 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
Hinweise
Alle Klassen, die die Klasse implementieren, können das SiteMapProvider Konzept einer Websitezuordnungsanbieterhierarchie unterstützen. Alle hierarchischen Beziehungen zwischen Anbietern werden außerhalb des Umfangs einer SiteMapProviderCollection Sammlung durch die Anbieter selbst beibehalten. Ein Beispiel für eine funktionsbezogene Anbieterhierarchie finden Sie unter XmlSiteMapProvider.