Navigation
In ASP.NET 2.0, a menu can be stored in a file to make it easier to maintain. This file is normally called web.sitemap, and is stored in the root directory of the web.
Basically ASP.NET 2.0 has three navigation controls:
(1) Dynamic menus
(2) TreeViews
(3) Site Map Path
The Sitemap File
A sitemap file is an XML file stores the structured listing of site navigation links. Here is the format looks like.
<?xml version="1.0" encoding="iso-8859-1" ?>
<siteMap>
<siteMapNode title="Home" url="/aspnet/w3home.aspx">
<siteMapNode title="Services" url="/aspnet/w3services.aspx">
<siteMapNode title="Training" url="/aspnet/w3training.aspx"/>
<siteMapNode title="Support" url="/aspnet/w3support.aspx"/>
</siteMapNode>
</siteMapNode>
</siteMap>
Rules for creating a sitemap file
The XML file must contain a <siteMap> tag surrounding the content
The <siteMap> tag can only have one <siteMapNode> child node (the "home" page)
Each <siteMapNode> can have several child nodes (web pages)
Each <siteMapNode> has attributes defining page title and URL
Note The sitemap file must be placed in the root directory of the web and the URL attributes must be relative to the root directory.
(1) Dynamic menu
The Menu control displays a standard site navigation menu.
<asp:SiteMapDataSource id="nav1" runat="server" />
<form id="Form2" runat="server">
<asp:Menu ID="Menu1" runat="server" DataSourceId="nav1" />
</form>
Now we connect the menu with datasourceid attribute. The id connects it to the sitemapdatasource control.
The SiteMapDataSource control automatically connects to the default sitemap file (web.sitemap).
(2) TreeView
The TreeView control displays a multi level navigation menu.
<asp:SiteMapDataSource id="nav1" runat="server" /><form id="Form2" runat="server">
<asp:TreeView ID="TreeView1" runat="server" DataSourceId="nav1" />
</form>

(3) SiteMapPath
The SiteMapPath control displays the trail to the current page. The path acts as clickable links to previous pages.
Unlike the TreeView and Menu control the SiteMapPath control does NOT use a SiteMapDataSource. The SiteMapPath control uses the web.sitemap file by default.
<form id="Form2" runat="server">
<asp:SiteMapPath ID="SiteMapPath1" runat="server" />
</form>