Frage
Ich habe eine einfache Abfrage an eine Solr-Instanz mit SolrNet, aber aus irgendeinem Grunde, die Partitur ist immer 0.
Ich habe festgestellt:
-
hat ein Feld [SolrField ( "Score")] public double Score {get; einstellen; } In meiner Abbildungsklasse
-
hat überprüft, dass die Felder durchsuchen Zeichenfolge anstelle von Text.
Was könnte falsch sein? Bitte Hilfe
Update:
var results = solr.Query(q,
new QueryOptions
{
OrderBy = new[] { new SolrNet.SortOrder("DateSubmitted", Order.ASC) },
Fields = new[] { "score" }
}
);
Lösung
Stellen Sie sicher, dass Punktzahl in der Liste der Felder ist, wenn Sie die Anfrage zu tun (der fl Parameter), weil die Punktzahl standardmäßig nicht zurückgegeben wird.
Andere Tipps
Wie Pascal erwähnt, wird die Punktzahl standardmäßig nicht zurückgegeben, so dass Sie zu tun haben, fl = * punkten alles und die Partitur zu bekommen. In SolrNet übersetzt dies Fields = new[] {"*","score"}
.
Auch ist Mapping Groß- und Kleinschreibung, so dass Sie [SolrField("score")]
statt [SolrField("Score")]
wollen werden