SiteMapNode Constructor (SiteMapProvider, String, String)

 

Initializes a new instance of the SiteMapNode class using the specified URL, a key to identify the page that the node represents, and the site map provider that manages the node.

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

Public Sub New (
	provider As SiteMapProvider,
	key As String,
	url As String
)

Parameters

provider
Type: System.Web.SiteMapProvider

The SiteMapProvider with which the node is associated.

key
Type: System.String

A provider-specific lookup key.

url
Type: System.String

The URL of the page that the node represents within the site.

Exception Condition
ArgumentNullException

SiteMapProvider is null.

- or -

key is null.

The XmlSiteMapProvider class, which is the default SiteMapProvider provider implementation for ASP.NET, uses the SiteMapNode.Url property as a lookup key, if one is provided for the node (if a URL is not provided, a tracking identifier is generated for the node). Therefore, any SiteMapNode object that provides a URL and is used by the XmlSiteMapProvider must have a unique URL within the scope of the provider.

The following code example demonstrates how to use the SiteMapNodeCollection constructor to create a new SiteMapNodeCollection collection, and then add elements to it with the Add method.

' The LoadSiteMapData() Function loads site navigation
' data from persistent storage into a DataTable.

Dim siteMapData As DataTable
siteMapData = LoadSiteMapData()

' Create a SiteMapNodeCollection.
Dim nodes As New SiteMapNodeCollection()

' Create a SiteMapNode and add it to the collection.
Dim tempNode As SiteMapNode
Dim row As DataRow
Dim index As Integer
index = 0

While (index < siteMapData.Rows.Count)

    row = siteMapData.Rows(index)

    ' Create a node based on the data in the DataRow.
    tempNode = New SiteMapNode(SiteMap.Provider, row("Key").ToString(), row("Url").ToString())

    ' Add the node to the collection.
    nodes.Add(tempNode)
    index = index + 1
End While

.NET Framework
Available since 2.0
Return to top
Show: