Search code examples
asp.net-mvc-4mvcsitemapprovider

How to iterate over MvcSiteMapNodes


I have a partial view which I'm using to render out a sub-set of the MvcSiteMapNodes in my MvcSitemap.

However I am having trouble iterating over the MvcSiteMap nodes.

If I use;

var nodes = new MvcSiteMapProvider.Web.Html.Models.SiteMapHelperModel();

it returns an empty collection.

How do you iterate over the MvcSiteMapNodes?


Solution

  • Solved this by using the following;

    var nodes = SiteMap.CurrentNode.RootNode.ChildNodes;
            foreach(SiteMapNode node in nodes)
            {
                MvcSiteMapProvider.MvcSiteMapNode mvcNode = (MvcSiteMapProvider.MvcSiteMapNode)node;