Glass Mapper未返回所有结果

时间:2016-03-03 21:33:45

标签: sitecore glass-mapper sitecore8.1

我正在与Glass Mapper斗争,并且在谷歌上找不到什么。我的班级有一个属性,应该得到所有后代新闻文章:

[SitecoreQuery(".//*[@@templateid='{6F15C485-CA13-4352-A411-7F36447CC879}']", IsRelative = true, IsLazy = true)]
IEnumerable<IArticle> DescendantArticles { get; set; }

应该有大约850个安排在按年份命名的文件夹中,然后按月份编号,但我只得到260个结果。 我已尝试按照Tutorial 7中列出的查询格式:

[SitecoreQuery("./*/*/*[@@templateid='{6F15C485-CA13-4352-A411-7F36447CC879}']", IsRelative = true, IsLazy = true)]

仍然没有骰子。如果我尝试:

[SitecoreQuery("./2015/*/*[@@te...

我将收到所有2015年的文章,所以它们都已发布,但在试图获得该批次时,我仍然只收到前200篇文章(2010-2011!)。我试过改变:

<setting name="Query.MaxItems" value="100" />

没有结果。我担心我错过了什么。请帮忙!

1 个答案:

答案 0 :(得分:4)

由于您运行的是Sitecore查询,因​​此返回的商品数量受Query.MaxItems设置的限制:

<!--  Query.MaxItems
        Specifies the max number of items in a query result set.
        If the number is 0, all items are returned. This may affect system performance, if a
        large query result is returned.
        This also controls the number of items in Lookup, Multilist and Valuelookup fields.
        Default value: 100
  -->
<setting name="Query.MaxItems" value="100"/>

来自Sitecore.config的此值依次由Sitecore.ExperienceExplorer.config中的设置修补,该值将值设置为260,这在Sitecore 8.1中已更新。这就是为什么你只返回了那么多项目。

要么增加此值,要么重新评估代码以使用ContentSearch API会更好。将此值过高会对性能产生负面影响。