ASP.NET includes a set of navigation features that you can use to implement a navigation system in your web based project. ASP.NET navigation is flexible, configurable, and pluggable. It has three components:

C# 8.0 and .NET Core 3.0 – Modern Cross-Platform Development: Build applications with C#, .NET Core, Entity Framework Core, ASP.NET Core, and ML.NET using Visual Studio Code, 4th Edition
ASP.NET Core 3 and Angular 9: Full stack web development with .NET Core 3.1 and Angular 9, 3rd Edition
C# in Depth, 4th Edition

– With first component you can define the navigational structure of your website. This part is the XML site map, which is by default stored in the file.

– The second component parses the site map file and converts its information into suitable object model. This part is performed by SiteMapDataSource control and the XmlSiteMapProvider.

– The last component uses the site map information to display the user’s current position and gives the user the ability to easily move from one place to another. This part is provided through the controls you bind to the SiteMapDataSource control, which can include breadcrumb links, lists, menus, and trees.

You can customize or extend each of these parts separately. The next picture shows how these parts fit together:


ASP.NET navigation with site maps

ASP.NET navigation with site maps