2009-07-08 18 views
1

Ich möchte eine AZ von einem SiteMap generieren ... ich die Web.sitemap nicht direkt verwenden, sondern eine StaticSiteMapProvider, basierend auf diesem Blog-Eintrag von Simon Harriyott: Adding dynamic nodes to ASP.NET site maps at runtime by deriving from StaticSiteMapProvidergenerieren AZ von ASP.NET SiteMap

Wie kann ich das tun?

Edit:

Ich möchte eine A-Z Liste von Link-Titel. Könnte am Wurzelknoten oder einem beliebigen untergeordneten Knoten beginnen. Ich möchte auch an einen Repeater binden und die anzuzeigenden Seiten begrenzen (z. B. keine Links mit "admin" oder "profile" in der URL anzeigen).

Verwenden von .NET 2.0, also kein LINQ-Code.

+0

Sie möchten alphabetische Seiten statt chronologisch geordnet haben? – Soviut

+0

Ja ... kann nicht wirklich nach Zeit sortieren, außer wenn ich eine Datenbank benutze, um sie dynamisch zu erstellen (würde nicht wissen, wie ich damit anfangen soll - zB aktualisiertes Datum an jeden Knoten angehängt ...) – SamWM

+0

Es ist schön zu wissen, dass du ' re mit meinem Code – harriyott

Antwort

0

Ich bin mir nicht ganz sicher, was Sie mit einem "A-Z" meinen. Ich denke, Sie meinen eine alphabetische Liste aller Seiten in Ihrer SiteMap? Wenn ja, könnte das helfen.

 var NodesAtoZ = from SiteMapNode node in SiteMap.RootNode.GetAllNodes() 
        orderby node.Title 
        select new 
        { 
         Title = node.Title, 
         Url = node.Url, 
         Description = node.Description 
        }; 

Dies gibt eine Liste aller SiteMap-Knoten zurück, die nach Titel geordnet sind.

+0

Ich möchte eine alphabetische Liste von Seiten, nicht unbedingt alle, aber es könnte die in einem bestimmten Unterknoten sein. Auch ich benutze .NET 2.0, also kein LINQ – SamWM