SiteMapNode.Clone(true)的替代品,包括兄弟姐妹

时间:2014-01-27 11:20:34

标签: c# asp.net webforms sitemap

我想要保留父母,兄弟姐妹和孩子的SiteMap.CurrentNode.Clone(true)替代品。我希望能够遍历SiteMap,就像我直接访问SiteMap一样。

原始问题列在here

在特定页面上,我使用SiteMap.SiteMapResolve编辑CurrentNode的父级。这会破坏我在其他地方的代码,导航堆栈,然后访问所需级别的所有ChildNodes:

SiteMapNode c = System.Web.SiteMap.CurrentNode;    
if (jumpsRequired < 0) {
       while (jumpsRequired < 0)
       {
            c = c.ParentNode;
            jumpsRequired++;
       }
}
return c.HasChildNodes ? c.ChildNodes.Cast<SiteMapNode>() : new List<SiteMapNode>();

因为我在SiteMap.SiteMapResolve ChildNodes.Count&lt; = 1上克隆了CurrentNode,因为克隆不会复制兄弟姐妹。

0 个答案:

没有答案