Pregunta
Tengo una pregunta simple a una instancia de Solr usando SolrNet, pero por alguna razón, el resultado es siempre 0.
He verificado:
-
tener un campo [SolrField ( "Puntuación")] Puntuación doble pública {get; conjunto; } En mi clase de mapeo
-
haber comprobado que los campos están siendo buscadas cadena en lugar de texto.
¿Qué otra cosa podría estar mal? Por favor, ayuda
Actualización:
var results = solr.Query(q,
new QueryOptions
{
OrderBy = new[] { new SolrNet.SortOrder("DateSubmitted", Order.ASC) },
Fields = new[] { "score" }
}
);
Solución
Asegúrese de que la puntuación está en la lista de campos cuando se hace la petición (el parámetro fl), ya que la puntuación no se devuelve por defecto.
Otros consejos
Al igual que Pascal señaló, la puntuación no es devuelto por defecto, por lo que tiene que hacer fl = *, partitura para conseguir todo y la puntuación . En SolrNet esto se traduce en Fields = new[] {"*","score"}
.
También mapeo entre mayúsculas y minúsculas por lo que querrá [SolrField("score")]
en lugar de [SolrField("Score")]