SiteMap.CurrentNode Tulajdonság
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
SiteMapNode Lekéri az aktuálisan kért lapot jelképező vezérlőt.
public:
static property System::Web::SiteMapNode ^ CurrentNode { System::Web::SiteMapNode ^ get(); };
public static System.Web.SiteMapNode CurrentNode { get; }
static member CurrentNode : System.Web.SiteMapNode
Public Shared ReadOnly Property CurrentNode As SiteMapNode
Tulajdonság értéke
Egy SiteMapNode példány, amely az aktuálisan kért lapot jelöli, ellenkező esetben, nullha nincs reprezentatív csomópont a webhelytérkép adatai között.
Kivételek
A webhelytérkép szolgáltatás nincs engedélyezve.
A konfigurációban megadott alapértelmezett szolgáltató nem létezik.
A funkció csak alacsony megbízhatósági vagy magasabb szintű futtatás esetén támogatott.
Példák
Az alábbi példakód bemutatja, hogyan használhatja a tulajdonságot az CurrentNodeSiteMapNode aktuális lapot képviselő objektum lekérésére.
<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>
Megjegyzések
Az SiteMap osztály lekéri a CurrentNode tulajdonságot a szolgáltatótól való lekérésével.
Ha a webhelytérkép adatai között nincs reprezentatív csomópont a laphoz, vagy ha engedélyezve van a biztonsági vágás, és a csomópont nem adható vissza az aktuális felhasználó számára, null a rendszer visszaadja.
Az SiteMapResolve eseményt az alapértelmezett helytérkép-szolgáltató emeli ki, ha egy vagy több előfizetés létezik.
Ha saját SiteMapProvider objektumot valósít meg, létrehozhatja saját mechanizmusát a kereséshez és a CurrentNodelekéréshez. Ha azonban kiterjeszti az StaticSiteMapProvider osztályt, és URL-alapú sémát használ a lapok azonosításához, felülbírálhatja a metódust FindSiteMapNode .