private static IEnumerable<PageTreeItem> GetPageTreeChildrenRecursive(this IPage page, IContentService contentService, int depth, int level = 1)
 {
     return contentService.GetChildren(page).Select(p => new PageTreeItem
     { 
         Id = p.Id,
         IsStartPage = p.Id == contentService.StartPage.Id,
         Name = p.Name,
         ParentId = p.ParentId,
         HasChildren = contentService.GetPageInfo(pi => pi.ParentId == p.Id).Count() > 0,
         Children = level < depth ? p.GetPageTreeChildrenRecursive(contentService, depth, level + 1) : Enumerable.Empty<PageTreeItem>()
     
     });
 }