Я использую SOLR и пытаюсь отфильтровать запрос MoreLikeThis.Каждый раз, когда я делаю фильтр, я получаю нулевые результаты.Вот код, который я использую:
var results = solr.Query(new SolrQuery("id:" + id)
&& !new SolrQuery("siteid:" + SiteId), new QueryOptions
{
MoreLikeThis = new MoreLikeThisParameters(new[] { "content" })
{
MinDocFreq = 1,
MinTermFreq = 1,
Count = rows
},
Fields = new[] { "id" },
OrderBy = new[] { new SortOrder("score", Order.ASC) },
Start = start
});
, как видите, !new SolrQuery("site:" + SiteId)
- это фильтр.Когда я добавляю этот фильтр в запрос, я не получаю результатов.
Вот что делает запрос.У меня есть несколько веб-страниц в индексе solr:
- id
- Заголовок
- Содержимое
- siteid
Более похожий на запрос запрос id
затем извлекает аналогичные документы.Предполагается, что фильтр фильтрует веб-страницы по siteid.Когда я применяю фильтр siteid, он не работает.Есть идеи по этому поводу?