2012-03-19 4 views
1

Я реализовал SolrNet на веб-сайте VB.NET и отлично работает с одним исключением. Объект моих результатов может сказать мне, что найдено 10 соответствующих «документов», но коллекция содержит только 9.Результаты запроса не соответствуют NumFound при использовании SolrNet с VB.NET

Моя коллекция всегда содержит 1 меньше состояний свойства NumFound. Я запускал запросы непосредственно через экземпляр Solr, и я знаю, что свойство NumFound отражает правильное значение. Просмотрев возвращенные документы, я вижу, что первый документ в каждом результирующем наборе отсутствует в моей коллекции, то есть в позиции 0.

Это похоже на проблему, связанную с нулевой индексированной коллекцией.

Я не вижу, что я делаю что-то неправильно и подозреваю, что это ошибка. Кто-нибудь еще испытал это или может предложить, где я, возможно, ошибся?

Исходный код выглядит следующим образом

Private Prods As New SolrQueryResults(Of BLL.solrProduct) 

Dim solr As ISolrOperations(Of BLL.solrProduct) = ServiceLocator.Current.GetInstance(Of ISolrOperations(Of BLL.solrProduct))() 

Dim SolrQueryOptions As New SolrNet.Commands.Parameters.QueryOptions() With {.Stats = New StatsParameters(), .Start = PagingCurrent, .Rows = PagingSize, .Facet = New FacetParameters() With { _ 
.MinCount = 1, .Queries = New SolrNet.ISolrFacetQuery() {New SolrFacetFieldQuery("brand")}}} 

SolrQueryOptions.Stats.AddField("selling_price") 

SolrQueryOptions.FilterQueries.Add(New SolrQueryByField("brand", "puma")) 

Prods = solr.Query("shirt", SolrQueryOptions) 

PagingTotal = Prods.NumFound 'This returns 10 
lv_prods.DataSource = Prods 
lv_prods.DataBind()    'This renders 9 items 
+0

Пожалуйста, пост неисправного тест ... без каких-либо дополнительной информации все, что я могу скажем, использовать образец приложения в качестве ссылки. Кроме того, почему в вашем запросе категории есть трубы? –

+0

Строка запроса, которую я использую в моем экземпляре Solr, чтобы отразить то, что я отправляю через библиотеку SolrNet, выглядит следующим образом: – user1279273

+0

q = product_name: shirt OR product_description: shirt OR id: shirt & start = 0 & rows = 12 & facet = on & facet.field = brand & fq = brand: puma & facet.mincount = 1 & stats = true & stats.field = sales_price В моей категории запросов есть трубы, так как я имел дело с продуктом, принадлежащим более чем одной категории, поле категории содержит разделенный по трубам список всех категорий, к которым принадлежит продукт, и затем я могу выдать запрос в поле категории так: «| 8878 |» для получения всех продуктов, относящихся к категории 8878. Фактическое полевое содержимое может быть «| 8854 | 8896 | 8878 | 8564 |» – user1279273

ответ

4

Solr пагинация с нуля, т.е. первый элемент соответствует Start = 0

Смежные вопросы