Alle verwenden,Wie die MultiTermVectors Funktion in Elasticsearch Nest
ich eine Reihe von XML-Dateien in Elasticsearch indizieren Nachrichten indiziert und reuters eingeben. Ich kann dann
var termvecResponse = Client.TermVectors<reuters>(t => t.Index("news").Id(1).TermStatistics().Fields(f => f.Body));
verwenden, um den Begriff Vektor für das erste Dokument zu erhalten. Meine Frage ist, wie ich den Anruf verwenden kann
Client.MultiTermVectors<reuters>
ich versucht habe
var idRange = Enumerable.Range(1, 10);
var tvecR = Client.MultiTermVectors(new MultiTermVectorsRequest(typeof(reuters))
{
Documents = idRange.Select(n => new MultiTermVectorOperation<reuters>(n)
{
Type=typeof(reuters),
FieldStatistics = false,
Payloads = false,
TermStatistics = true,
Positions = false,
Offsets = false
})
});
Es gibt leeren Begriff Vektoren und das Response-Objekt sagt der POST Aufruf war auf/news/_mtermvectors statt/news/Reuters/_Mtermvectors irgendwelche Ideen? Danke für die Hilfe.
Low-Level-Lösung: den Lowlevel-Aufruf verwendet, wie unten, wenn jemand es braucht
string sbRequestBody = "{\"ids\":[\"1\", \"2\"],\"parameters\":{\"fields\": [\"body\"],\"term_statistics\":true}}";
var termvecResponse =Client.LowLevel.Mtermvectors<MultiTermVectorsResponse>("news", "reuters", sbRequestBody);
Perfekt, danke! – sramalingam24