Edit

Share via


SiteMapProvider.GetCurrentNodeAndHintAncestorNodes(Int32) Method

Definition

Provides an optimized lookup method for site map providers when retrieving the node for the currently requested page and fetching the parent and ancestor site map nodes for the current page.

public:
 virtual System::Web::SiteMapNode ^ GetCurrentNodeAndHintAncestorNodes(int upLevel);
public virtual System.Web.SiteMapNode GetCurrentNodeAndHintAncestorNodes (int upLevel);
abstract member GetCurrentNodeAndHintAncestorNodes : int -> System.Web.SiteMapNode
override this.GetCurrentNodeAndHintAncestorNodes : int -> System.Web.SiteMapNode
Public Overridable Function GetCurrentNodeAndHintAncestorNodes (upLevel As Integer) As SiteMapNode

Parameters

upLevel
Int32

The number of ancestor site map node generations to get. A value of -1 indicates that all ancestors might be retrieved and cached by the provider.

Returns

A SiteMapNode that represents the currently requested page; otherwise, null, if the SiteMapNode is not found or cannot be returned for the current user.

Exceptions

upLevel is less than -1.

Remarks

The default implementation of the GetCurrentNodeAndHintAncestorNodes method returns the CurrentNode property; however, site map providers can override the GetCurrentNodeAndHintAncestorNodes method and provide an optimized implementation that uses custom caching mechanisms to return the current SiteMapNode, as well as the parent and ancestor nodes of the parent.

The upLevel parameter is used to specify how many levels of parent and ancestor nodes to retrieve. If preferred, the parent and ancestor nodes can be linked to the SiteMapNode object that is returned by the GetCurrentNodeAndHintAncestorNodes method, using the ParentNode property.

The XmlSiteMapProvider class, which is the default site map provider for ASP.NET, caches the entire site map in memory, which results in little or no overhead when querying the XmlSiteMapProvider for specific SiteMapNode objects.

Applies to

See also