SiteMapProvider.RootProvider Özellik
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Geçerli sağlayıcı hiyerarşisindeki kök SiteMapProvider nesneyi alır.
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
Özellik Değeri
SiteMapProvider Geçerli sağlayıcının ait olduğu sağlayıcı hiyerarşisindeki en üst düzey site haritası sağlayıcısıdır.
Özel durumlar
Geçerli site haritası sağlayıcısına döngüsel bir başvuru vardır.
Örnekler
Aşağıdaki kod örneği, soyut SiteMapProvider sınıfı uygulayan bir sınıfta özelliğinin nasıl uygulandığını RootProvider gösterir. , SimpleTextSiteMapProvider
geçerli sağlayıcının bir sağlayıcı hiyerarşisinin parçası olup olmadığını belirlemek için basit mantık kullanır. Sağlayıcı bir hiyerarşinin parçasıysa, üst sağlayıcı için özelliğini kendi özelliği olarak kullanır RootProvider . Sağlayıcı bir hiyerarşinin parçası değilse, sağlayıcı kendi kök sağlayıcısıdır.
Bu kod örneği, sınıfı için SiteMapProvider sağlanan daha büyük bir örneğin parçasıdır.
// 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
Açıklamalar
sınıfını SiteMapProvider uygulayan tüm sınıflar site haritası sağlayıcısı hiyerarşisi kavramını destekleyebilir. Sağlayıcılar arasındaki hiyerarşik ilişkiler, sağlayıcılar tarafından bir SiteMapProviderCollection koleksiyonun kapsamı dışında tutulur. İşlevsel sağlayıcı hiyerarşisi örneği için bkz XmlSiteMapProvider. .