Ektron:如何更改框架 API 的默认页面大小?

Ektron: How to change the Framework API's default page size?

我注意到当从框架 API 中提取内容时,默认页面大小为 50。我尝试调整 "ek_PageSize" AppSetting,但似乎没有影响 API.

基本上,在我所有的代码中,我需要创建一个新的 PaginInfo 对象来更新返回的项目数。

var criteria = new ContentTaxonomyCriteria(ContentProperty.Id, EkEnumeration.OrderByDirection.Descending);
criteria.PagingInfo = new PagingInfo(100);

有谁知道是否有一种方法可以更改该默认值(针对整个站点)而无需在每次调用时根据条件修改 PagingInfo 对象?

web.config 中有一个页面大小应用程序设置,我相信 也可以控制此默认页面大小。但请注意,这也会更改工作区内的页面大小。

因此,如果将其设置为 100,则每页将显示 100 个用户、内容项、别名等,而不是默认的 50 个。

您可以创建一个工厂方法来创建您的条件对象。然后,您可以调用此工厂方法,而不是实例化标准对象。从这里,您可以定义您的代码独有的 AppSetting。 ContentManager 使用了多种类型的条件对象,因此您甚至可以使工厂方法通用。

private T GetContentCriteria<T>() where T : ContentCriteria, new()
{
    // Sorting by Id descending will ensure newer content blocks are favored over older content.
    var criteria = new T
    {
        OrderByField = ContentProperty.Id,
        OrderByDirection = EkEnumeration.OrderByDirection.Descending
    };

    int maxRecords;
    int.TryParse(ConfigurationManager.AppSettings["CmsContentService_PageSize"], out maxRecords);

    // Only set the PagingInfo if a valid value exists in AppSettings.
    // The Framework API's default page size of 50 will be used otherwise.
    if (maxRecords > 0)
    {
        criteria.PagingInfo = new PagingInfo(maxRecords);
    }

    return criteria;
}