TaxonomyManager.GetTree()丢失记录

时间:2018-11-23 19:23:49

标签: c# taxonomy ektron

我目前正在使用TaxonomyManager来抓取类别中的一组项目并将其显示为我们网站内链接列表的网站。

我们注意到,尽管有一些记录属于该类别,但并未包含在列表中。逐步执行代码后,我注意到当数据通过GetTree()传递时,项目数从84变为80。

我尝试过在线搜索,但是找不到关于GetTree()丢失或截断数据的信息。

    TaxonomyData taxonomyData = new TaxonomyData();

    Dictionary<string, TaxonomyItemData> taxonomyFullData = new Dictionary<string,TaxonomyItemData>();
    List<TaxonomyItemData> taxonomyFullDataList = new List<TaxonomyItemData>();

    Ektron.Cms.API.Content.Taxonomy taxonomyApi = new Ektron.Cms.API.Content.Taxonomy();
    TaxonomyManager txMan = new TaxonomyManager();

    TaxonomyBaseData[] taxBaseData = taxonomyApi.ReadAllAssignedCategory(longContentId);

    foreach(TaxonomyBaseData myTaxData in taxBaseData ){
        PagingInfo pageInfo = new PagingInfo();
        pageInfo.CurrentPage = 1;
        pageInfo.RecordsPerPage = myTaxData.ItemCount;

        taxonomyData = txMan.GetTree(myTaxData.Id, 5, true, pageInfo);

        taxonomyFullData = getTaxonomyData(taxonomyData, taxonomyFullData);

    }

1 个答案:

答案 0 :(得分:0)

我前一段时间做过Ektron。但是在其中一个配置中(在新版本中有更多配置,不记得名称了),您可以设置列表限制(Defualt = 50)。

在您的API中,您也可以像这样通过PageingInfo进行操作:

PagingInfo pageInfo = new PagingInfo(100);

或者当您只想要全部时:

PagingInfo pageInfo = new PagingInfo(int.MaxValue);