TaxonomyManager.GetTree () Потеря записей - PullRequest
0 голосов
/ 23 ноября 2018

В настоящее время я работаю над сайтом, который использует 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 голосов
/ 27 ноября 2018

Я сделал Ektron некоторое время назад.Но в одном из конфигов (в новой версии их больше, имена не запоминаются) вы можете установить пределы списка (Defualt = 50).

В вашем API вы также можете сделать это через PageingInfo следующим образом:

PagingInfo pageInfo = new PagingInfo(100);

Или когда вы просто хотите все:

PagingInfo pageInfo = new PagingInfo(int.MaxValue);
...