SiteMapProvider.RootProvider Properti
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mendapatkan objek akar SiteMapProvider dalam hierarki penyedia saat ini.
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
Nilai Properti
Yang SiteMapProvider merupakan penyedia peta situs tingkat atas dalam hierarki penyedia tempat penyedia saat ini berada.
Pengecualian
Ada referensi melingkar ke penyedia peta situs saat ini.
Contoh
Contoh kode berikut menunjukkan cara mengimplementasikan RootProvider properti di kelas yang mengimplementasikan kelas abstrak SiteMapProvider . menggunakan SimpleTextSiteMapProvider logika sederhana untuk menentukan apakah penyedia saat ini adalah bagian dari hierarki penyedia. Jika penyedia adalah bagian dari hierarki, penyedia menggunakan RootProvider properti untuk penyedia induk sebagai miliknya. Jika penyedia bukan bagian dari hierarki, penyedia adalah penyedia akarnya sendiri.
Contoh kode ini adalah bagian dari contoh yang lebih besar yang disediakan untuk SiteMapProvider kelas .
// 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
Keterangan
Semua kelas yang mengimplementasikan SiteMapProvider kelas dapat mendukung konsep hierarki penyedia peta situs. Setiap hubungan hierarkis antara penyedia dipertahankan di luar cakupan SiteMapProviderCollection koleksi oleh penyedia itu sendiri. Untuk contoh hierarki penyedia fungsional, lihat XmlSiteMapProvider.