SiteMap.RootNode Ö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.
Site için gezinti yapısının en üst düzey sayfasını temsil eden bir SiteMapNode nesnesi alır.
public:
static property System::Web::SiteMapNode ^ RootNode { System::Web::SiteMapNode ^ get(); };
public static System.Web.SiteMapNode RootNode { get; }
static member RootNode : System.Web.SiteMapNode
Public Shared ReadOnly Property RootNode As SiteMapNode
Özellik Değeri
SiteMapNode Sitenin gezinti yapısının en üst düzey sayfasını temsil eden bir; aksi takdirde, null
güvenlik kırpma etkinleştirildiyse ve düğüm geçerli kullanıcıya döndürülemiyorsa.
Özel durumlar
Site haritası özelliği etkinleştirilmedi.
-veya-
null
, RootNode güvenlik kırpması etkinse ve kök düğüm geçerli kullanıcı tarafından görülmezse oluşur.
Yapılandırmada belirtilen varsayılan sağlayıcı yok.
Özellik yalnızca Düşük güven veya daha yüksek bir değerle çalışırken desteklenir.
Örnekler
Aşağıdaki kod örneği, sayfa hiyerarşisindeki geçerli konumdan RootNode bağımsız olarak sitenin SiteMapNode kök düğümünü temsil eden nesneyi almak için özelliğinin nasıl kullanılacağını gösterir.
<script runat="server">
private void Page_Load(object sender, System.EventArgs e)
{
// Examine the CurrentNode, and navigate the SiteMap relative to it.
Response.Write(SiteMap.CurrentNode.Title + "<br />");
Response.Write("<font COLOR='red'>" + SiteMap.CurrentNode.Url + "</font><br />");
// What nodes are children of the CurrentNode?
if (SiteMap.CurrentNode.HasChildNodes) {
IEnumerator childNodesEnumerator = SiteMap.CurrentNode.ChildNodes.GetEnumerator();
while (childNodesEnumerator.MoveNext()) {
// Prints the Title of each node.
Response.Write(childNodesEnumerator.Current.ToString() + "<br />");
}
}
Response.Write("<hr />");
// Examine the RootNode, and navigate the SiteMap relative to it.
Response.Write(SiteMap.RootNode.Title + "<br />");
Response.Write(SiteMap.RootNode.Url + "<br />");
// What nodes are children of the RootNode?
if (SiteMap.RootNode.HasChildNodes) {
IEnumerator rootNodesChildrenEnumerator = SiteMap.RootNode.ChildNodes.GetEnumerator();
while (rootNodesChildrenEnumerator.MoveNext()) {
// Prints the Title of each node.
Response.Write(rootNodesChildrenEnumerator.Current.ToString() + "<br />");
}
}
}
</script>
<script runat="server">
Private Sub Page_Load(sender As Object, e As EventArgs)
' Examine the CurrentNode, and navigate the SiteMap relative to it.
Response.Write(SiteMap.CurrentNode.Title & "<br />")
Response.Write("<font COLOR='red'>" & SiteMap.CurrentNode.Url & "</font><br />")
' What nodes are children of the CurrentNode?
If (SiteMap.CurrentNode.HasChildNodes) Then
Dim ChildNodesEnumerator As IEnumerator = SiteMap.CurrentNode.ChildNodes.GetEnumerator()
While (ChildNodesEnumerator.MoveNext())
' Prints the Title of each node.
Response.Write(ChildNodesEnumerator.Current.ToString() & "<br />")
End While
End If
Response.Write("<hr />")
' Examine the RootNode, and navigate the SiteMap relative to it.
Response.Write(SiteMap.RootNode.Title & "<br />")
Response.Write(SiteMap.RootNode.Url & "<br />")
' What nodes are children of the RootNode?
If (SiteMap.RootNode.HasChildNodes) Then
Dim RootNodesChildrenEnumerator As IEnumerator = SiteMap.RootNode.ChildNodes.GetEnumerator()
While (RootNodesChildrenEnumerator.MoveNext())
' Prints the Title of each node.
Response.Write(RootNodesChildrenEnumerator.Current.ToString() & "<br />")
End While
End If
End Sub ' Page_Load
</script>
Açıklamalar
sınıfı, SiteMap sağlayıcıdan isteyerek özelliğini alır RootNode . Sağlayıcı hiyerarşisi varsa, sınıfı hiyerarşideki SiteMap kök sağlayıcının kök düğümünü alır. Varsayılan sağlayıcının kök düğümüne erişmek için, hem varsayılan sağlayıcıyı Provider hem de özelliğini alan özelliğini çağırın RootNode .
XmlSiteMapProvider sınıfı için SiteMap varsayılan sağlayıcı olan nesnesi yalnızca bir RootNodeöğesini destekler.
Kendi SiteMapProvider sınıfınızı uygular ve soyut RootNode özelliğini geçersiz kılarsanız, örneğin özelliğini SiteMapNode izlemek RootNode için kendi uygulamanızı sağlamanız gerekir.
Kök düğümün tasarım gereği tüm kullanıcılar tarafından görülebilmesi gerekir. Güvenlik kırpma etkinleştirildiğinde kök düğüm tüm kullanıcılar tarafından görülemiyorsa, özelliğe erişmek RootNode bir InvalidOperationException özel durumla sonuçlanabilir.