Exemple #1
0
        public List <T> GetList <T>(long SourceID, Enumeration.ContentSourceType SourceType, int LanguageID, int MaxResults = 100, int PageNumber = 1) where T : GenericContent, new()
        {
            ContentCriteria criteria;

            switch (SourceType)
            {
            case Enumeration.ContentSourceType.Folder:
                criteria = GetFolderCriteria(SourceID);
                break;

            case Enumeration.ContentSourceType.Collection:
                criteria = GetCollectionCriteria(SourceID);
                break;

            case Enumeration.ContentSourceType.Taxonomy:
                criteria = GetTaxonomyCriteria(SourceID);
                break;

            default:
                criteria = GetFolderCriteria(SourceID);
                break;
            }

            ApplyContentRestrictions <T>(ref criteria);

            criteria.FolderRecursive = true;
            criteria.PagingInfo      = new Ektron.Cms.PagingInfo(MaxResults, PageNumber);
            criteria.ReturnMetadata  = true;

            var sourceList = CommonAPI.ContentInstance.GetList(criteria);
            var results    = (from source in sourceList
                              select source.ToGenericContent <T>()).ToList();

            return(results);
        }
Exemple #2
0
        public List <T> GetAll <T>(long SourceID, Enumeration.ContentSourceType SourceType, int LanguageID) where T : GenericContent, new()
        {
            var results = new List <T>();

            ContentCriteria criteria;

            switch (SourceType)
            {
            case Enumeration.ContentSourceType.Folder:
                criteria = GetFolderCriteria(SourceID);
                break;

            case Enumeration.ContentSourceType.Collection:
                criteria = GetCollectionCriteria(SourceID);
                break;

            case Enumeration.ContentSourceType.Taxonomy:
                criteria = GetTaxonomyCriteria(SourceID);
                break;

            default:
                criteria = GetFolderCriteria(SourceID);
                break;
            }
            criteria.FolderRecursive = true;
            criteria.PagingInfo      = new Ektron.Cms.PagingInfo(50, 1);
            criteria.ReturnMetadata  = true;

            var sourceList = CommonAPI.ContentInstance.GetList(criteria);

            results = (from source in sourceList
                       select source.ToGenericContent <T>()).ToList();
            if (criteria.PagingInfo.TotalPages > 1)
            {
                for (int i = 2; i <= criteria.PagingInfo.TotalPages; i++)
                {
                    criteria.PagingInfo.CurrentPage = i;
                    results.AddRange(from source in CommonAPI.ContentInstance.GetList(criteria)
                                     select source.ToGenericContent <T>());
                }
            }

            return(results);
        }
Exemple #3
0
 public List <T> GetAll <T>(long SourceID, Enumeration.ContentSourceType SourceType) where T : GenericContent, new()
 {
     return(this.GetAll <T>(SourceID, SourceType, CommonAPI.ContentInstance.ContentLanguage));
 }
Exemple #4
0
 public List <T> GetList <T>(long SourceID, Enumeration.ContentSourceType SourceType, int MaxResults = 100, int PageNumber = 1) where T : GenericContent, new()
 {
     return(this.GetList <T>(SourceID, SourceType, CommonAPI.ContentInstance.ContentLanguage, MaxResults, PageNumber));
 }