Carrotware.CMS.Core.ContentPageHelper.GetPageHierarchy C# (CSharp) Метод

GetPageHierarchy() публичный Метод

public GetPageHierarchy ( System.Guid siteID, System.Guid rootContentID ) : List
siteID System.Guid
rootContentID System.Guid
Результат List
        public List<Guid> GetPageHierarchy(Guid siteID, Guid rootContentID)
        {
            List<Guid> lstSub = new List<Guid>();
            int iDepth = 10000;

            List<Guid> lstFoundIDs = new List<Guid>();
            lstFoundIDs.Add(rootContentID);

            while (iDepth > 1) {
                lstSub = (from ct in CannedQueries.GetLatestContentList(db, siteID, false)
                          where ct.SiteID == siteID
                                && (!lstFoundIDs.Contains(ct.Root_ContentID) && lstFoundIDs.Contains(ct.Parent_ContentID.Value))
                          select ct.Root_ContentID).Distinct().ToList();

                lstFoundIDs = lstFoundIDs.Union(lstSub).ToList();

                if (lstSub.Count < 1) {
                    break;
                }
                iDepth--;
            }

            return lstFoundIDs;
        }