Creating Custom Site Map Attributes : Site Maps « Development « ASP.NET Tutorial






Any custom attributes that you add to a Site Map are exposed by instances of the SiteMapNode class. 

File: Web.sitemap

<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
<siteMapNode
  url="Default.aspx"
  title="Home"
  description="The Home Page">
  <siteMapNode
    url="Default1.aspx"
    title="Our Products"
    description="Products that we offer">
    <siteMapNode
      url="FirstProduct.aspx"
      title="First Product"
      description="The description of the First Product" />
    <siteMapNode
      url="SecondProduct.aspx"
      title="Second Product"
      description="The description of the Second Product" />
  </siteMapNode>
  <siteMapNode
    url="Default2.aspx"
    title="Our Services"
    description="Services that we offer">
    <siteMapNode
      url="FirstService.aspx"
      title="First Service"
      description="The description of the First Service"
      metaDescription="The first service" />
    <siteMapNode
      url="SecondService.aspx"
      title="Second Service"
      description="The description of the Second Service" />
  </siteMapNode>
</siteMapNode>
</siteMap>


            
File: FirstService.aspx

<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<script runat="server">

    void Page_Load()
    {
        HtmlMeta meta = new HtmlMeta();
        meta.Name = "Description";
        meta.Content = SiteMap.CurrentNode["metaDescription"];
        head1.Controls.Add(meta);
    }
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="head1" runat="server">
    <title>First Service</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>

    <h1>The First Service</h1>

    </div>
    </form>
</body>
</html>








9.40.Site Maps
9.40.1.Defining a Site Map
9.40.2.The SiteMapPath control enables you to navigate to any parent page of the current page.
9.40.3.Format SiteMapPath
9.40.4.Using a template with the SiteMapPath control.
9.40.5.Using the SiteMap Class
9.40.6.Adding nodes to a Site Map dynamically.
9.40.7.Using the SiteMapNode Class
9.40.8.To display different links to different users depending on their roles, enable the Security Trimming
9.40.9.Merging Multiple Site Maps
9.40.10.Creating Custom Site Map Attributes
9.40.11.Creating the AutoSiteMapProvider
9.40.12.Displaying an automatically generated Site Map.
9.40.13.Removing the root node from the retrieved node collection
9.40.14.using the StartFromCurrentNode property
9.40.15.Using the StartingNodeUrl property
9.40.16.Working with the CurrentNode object (C#)
9.40.17.Working with the CurrentNode object (VB)
9.40.18.Creating a custom navigation display using the CurrentNode property (C#)
9.40.19.Creating a custom navigation display using the CurrentNode property (VB)