【问题标题】:TaxonomyManager.GetTree() Losing recordsTaxonomyManager.GetTree() 丢失记录
【发布时间】:2018-11-23 19:23:49
【问题描述】:

我目前正在开发一个网站,该网站使用 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);

    }

【问题讨论】:

    标签: c# taxonomy ektron


    【解决方案1】:

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

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

    PagingInfo pageInfo = new PagingInfo(100);
    

    或者当你想要所有的时候:

    PagingInfo pageInfo = new PagingInfo(int.MaxValue);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-10-15
      • 1970-01-01
      • 1970-01-01
      • 2017-09-02
      • 2020-12-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多