ToList< Object>从IQueryable转换时返回更少的记录

本文关键字:返回 记录 object Object IQueryable ToList 转换 | 更新日期: 2023-09-27 18:08:23

目前我们正面临一个奇怪的问题:-

我们正在使用ASP。使用Sitecore 7.1.2和Solr进行索引。当我们使用下面的语法检索条目时,它将为我们提供大约2500条记录。

using (var context = _sitecoreWrapper.GetIndexForContextDatabase(IndexConstants.SitecoreIndexNameFormat).CreateSearchContext())    
{     
    query = context.GetQueryable<Object>();    
}
List<Object> lstObj = query.ToList();

我们在IQueryable中获得2500条记录计数,然后当我要将其转换为列表时,它将每次只给我们500条记录计数。有谁知道我们做错了的问题/配置是什么吗?

ToList< Object>从IQueryable<object>转换时返回更少的记录

IQueryable.Count()将返回solr中与您的查询匹配的文档数量。但是,当调用. tolist()时,将返回实际的搜索结果。以避免因检索大量数据而导致的任何性能问题。Sitecore将您可以检索的搜索结果数量限制为500项。您可以通过修改Sitecore.ContentSearch.Solr.Indexes.Config

中的以下元素来改变这一点
<setting name="ContentSearch.SearchMaxResults" value="500" />