Jak mohu smyčku pozpátku od SiteMap.CurrentNode do SiteMap.RootNode

hlasů
0

Mám jednoduchý Sitemap takhle z asp: SiteMapDataSource:

Stránka 1> Stránka 2> Stránka 3

Chtěl bych vytvořit smyčky foreach v jazyce C #, který ji vytváří místo pro použití asp: SiteMapPath protože musím přidat některé výjimky k němu. Teď nemůžu přijít na to, jak mohu smyčku pozpátku od SiteMap.CurrentNode do SiteMap.RootNode?

Položena 09/04/2009 v 08:38
zdroj uživatelem
V jiných jazycích...                            


1 odpovědí

hlasů
3

Vlastnost hledáte je SiteMapNode.ParentNode

SiteMapNode currentNode = SiteMap.CurrentNode;
SiteMapNode rootNode = SiteMap.RootNode;
Stack<SiteMapNode> nodeStack = new Stack<SiteMapNode>();

while (currentNode != rootNode)
{
    nodeStack.Push(currentNode);

    currentNode = currentNode.ParentNode;
}

// If you want to include RootNode in your list
nodeStack.Push(rootNode);

SiteMapNode[] breadCrumbs = nodeStack.ToArray();
Odpovězeno 09/04/2009 v 08:51
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more