Как найти SiteMapNode по его URL-адресу (или другому ключу)?

Я думаю, что C # ASP.NET SiteMap использует URL-адрес в качестве ключа словаря внутри, поскольку он должен постоянно искать по URL-адресу и заставляет их быть уникальными. Я хочу использовать эту таблицу поиска, но не могу найти к ней доступ.

Каков наиболее эффективный способ получить конкретный SiteMapNode по URL-адресу? Доступ к нему есть?

Мой вариант использования заключается в том, что я хочу заполнить панель навигации из карты сайта, начиная с узла, который находится на два уровня ниже корня, в родительской цепочке моего текущего узла.


person Scott Stafford    schedule 26.07.2010    source источник


Ответы (1)


Я нашел это. Именно класс SiteMapProvider предоставляет метод, а не SiteMap или SiteMapNode, где я искал. См. http://msdn.microsoft.com/en-us/library/system.web.sitemapprovider.findsitemapnodefromkey.aspx.

Я смог использовать его так:

var node = SiteMap.Provider.FindSiteMapNodeFromKey(key);
person Scott Stafford    schedule 27.07.2010
comment
Просто обратите внимание, что для поиска по URL вы должны использовать: FindSiteMapNode - person Ronen Festinger; 19.03.2014