This documentation is archived and is not being maintained.

XmlSiteMapProvider.FindSiteMapNodeFromKey Method

Retrieves a SiteMapNode object based on a specified key.

Namespace:  System.Web
Assembly:  System.Web (in System.Web.dll)

public override SiteMapNode FindSiteMapNodeFromKey(
	string key


Type: System.String
A lookup key with which to search for a SiteMapNode.

Return Value

Type: System.Web.SiteMapNode
A SiteMapNode that represents the page identified by key; otherwise, null, if security trimming is enabled and the node cannot be shown to the current user or the node is not found by key in the node collection.


A child provider linked to the current site map provider returned a node that is not valid.

The XmlSiteMapProvider class overrides the FindSiteMapNodeFromKey method to ensure that any linked child providers are searched for the node, if the implementation for the base class does not return a node for key.

The XmlSiteMapProvider object, derived from the StaticSiteMapProvider class and the default site map provider for ASP.NET, uses the Url property of a SiteMapNode object as a lookup key in its internal collections, by default. If the Url property of the SiteMapNode is set, it must be unique within the scope of the provider. If no Url is specified, the XmlSiteMapProvider automatically generates a Key to track the nodes.

The FindSiteMapNodeFromKey method might call the BuildSiteMap method on any child providers that are associated with the current provider. Therefore, the exceptions that are described in the BuildSiteMap method might be thrown.

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.