Ошибка SolrNet - невозможно прочитать данные из транспортного соединения: соединение было закрыто
Я пытаюсь найти сервер Solr из веб-службы, используя SolrNet. Я установил соединение в global.asax: Startup.Init<ApartmentDoc>("http://192.168.0.100:8080/solr/");
Я пытаюсь запросить сервер в файле класса с помощью:
var solr = ServiceLocator.Current.GetInstance<ISolrOperations<ApartmentDoc>>();
var apartments = solr.Query(SolrQuery.All, new QueryOptions
{
ExtraParams = new Dictionary<string, string> {
{ "defType", "edismax" } ,
{ "fl", "*,score,_dist_:geodist() " } ,
{ "bf", "recip(geodist(),1,1000,1000)" } ,
{ "fq", string.Format("{{!geofilt d={0}}}", radius * 1.609344) } ,
{ "sfield", "Location" } ,
{ "pt", string.Format("{0},{1}", centerLat, centerLong) }
}
});
return apartments;
Я получаю ошибку: Unable to read data from the transport connection: The connection was closed.
Я проверил журналы в TomCat, и запрос проходит, и результаты, кажется, были возвращены.
Есть идеи, почему я не получаю результаты обратно?
Спасибо дрю
1 ответ
Поскольку в вашем коде не определен параметр 'row', скорее всего, запрос истекает из-за попытки получить большое количество документов. Как объясняется в документации SolrNet, всегда определяйте параметры нумерации страниц.