2009-07-08 70 views
1

我想从一个网站地图生成AZ ...我不直接使用web.sitemap中,而是一个StaticSiteMapProvider,在此基础上的博客文章由西蒙Harriyott:Adding dynamic nodes to ASP.NET site maps at runtime by deriving from StaticSiteMapProvider从ASP.NET站点地图生成AZ

我怎么能这样做呢?

编辑:

我想要一个A-Z列表,通过链接标题。可能从根节点或任何子节点开始。我也想绑定到一个转发器,并限制显示哪些页面(例如,不要在URL中显示'admin'或'profile'的链接)。

使用.NET 2.0,因此没有LINQ代码。

+0

你想按字母顺序排列页面而不是按时间顺序排列? – Soviut 2009-07-27 14:31:12

+0

是的......除非使用数据库动态构建数据库,否则不能按时间排序(不知道如何从头开始 - 例如更新附加在每个节点上的日期......) – SamWM 2009-07-27 15:46:36

回答

0

我不完全确定你的意思是“A-Z”。我认为你的意思是你想在你的SiteMap中的所有页面按字母顺序排列的列表?如果是这样的话可能会有所帮助

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

这将返回由Title排序的所有SiteMap节点的列表。