StaticSiteMapProvider.AddNode(SiteMapNode, SiteMapNode) Method

Definition

Adds a SiteMapNode to the collections that are maintained by the site map provider and establishes a parent/child relationship between the SiteMapNode objects.

protected public:
 override void AddNode(System::Web::SiteMapNode ^ node, System::Web::SiteMapNode ^ parentNode);
protected internal override void AddNode (System.Web.SiteMapNode node, System.Web.SiteMapNode parentNode);
override this.AddNode : System.Web.SiteMapNode * System.Web.SiteMapNode -> unit
Protected Friend Overrides Sub AddNode (node As SiteMapNode, parentNode As SiteMapNode)

Parameters

node
SiteMapNode

The SiteMapNode to add to the site map provider.

parentNode
SiteMapNode

The SiteMapNode under which to add node.

Exceptions

node is null.

The Url or Key is already registered with the StaticSiteMapProvider. A site map node must be made up of pages with unique URLs or keys.

Remarks

The site map node that is identified by the node parameter is added to an internal collection and a parent-child relationship is created between it and the site map node that is identified by the parentNode parameter.

The URL for a site map node might be interpreted when it is added to the internal collections. Application-relative and relative URLs are expanded to application-absolute virtual paths, which are then used internally to store and access the individual instances of the SiteMapNode class. Other URLs, such as physical paths, paths with protocols in them, and UNC paths, are not interpreted.

The XmlSiteMapProvider class, which is derived from the StaticSiteMapProvider class, and is 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 site map provider. The FindSiteMapNode method attempts to retrieve site map nodes based on their Url property. Otherwise, you can use the Key property and the corresponding FindSiteMapNodeFromKey method to retrieve site map nodes. If no Url or Key is specified, the site map provider automatically generates a Key to track the site map nodes.

Notes to Inheritors

When overriding the AddNode(SiteMapNode, SiteMapNode) method, ensure that the Key property is set to a unique value when adding the site map node using the AddNode method.

Applies to

See also