예제 #1
0
 private SitemapNode Create(SitemapNodeDefination sitemapNodeDefination, SitemapNode parent, RequestContext requestContext)
 {
     SitemapNode node = new SitemapNode
     {
         Icon = sitemapNodeDefination.Icon,
         Name = sitemapNodeDefination.Name,
         Parent = parent,
         Url = sitemapNodeDefination.Url.MakeUrl(requestContext),
         IsCurrent = sitemapNodeDefination.Url.IsCurrent(requestContext),
         Text = sitemapNodeDefination.Text(),
         Group = sitemapNodeDefination.Group(),
         Order = sitemapNodeDefination.Order,
         IsHidden = sitemapNodeDefination.IsHidden,
     };
     foreach (var childNodeDefination in sitemapNodeDefination.Nodes)
     {
         var childNode = Create(childNodeDefination, node, requestContext);
         if (childNode.IsCurrent)
         {
             childNode.InCurrent = true;
         }
         node.Nodes.Add(childNode);
     }
     node.Nodes = node.Nodes.OrderBy(x => x.Order).ToList();
     return node;
 }