2017-07-15 2 views
0

Ich bin verpflichtet, die Highlight-Ergebnisse für die folgende Abfrage-Suche zurück zu bekommen. Brauchen Sie Hilfe mich in die richtige Richtung zu zeigen. \ElasticSearch Query Suche mit Highlight C# Nest

Mit Nest 5.4.0 und Elasticsearch Server 5.5.0

var results = client.Search<Customer>(s => s 
       .Query(q => q.QueryString(qs=>qs.Query(searchTerm))) 
       .Highlight(h=> 
        h.Fields(f=> 
         f.Field("*") 
         .HighlightQuery(q => 
          q.QueryString(qs => s.Query(searchTerm)))) 
)); 

Hier ist die Anfrage JSON

{ 
    "highlight": { 
    "fields": { 
    "*": { 
     "highlight_query": { 
     "query_string": { 
     "query": "a" 
     } 
    } 
    } 
} 
    }, 
    "query": { 
    "query_string": { 
     "query": "a" 
    } 
    } 
} 
+0

würden Sie in der Lage, die tatsächliche HTTP-Anfrage – Alok

+0

Ich habe die Anfrage JSON hinzugefügt. –

Antwort

1

Statt tun die query_string Abfrage Ich ändere es in ein multi_match

{ 
    "from": 0, 
    "size": 10, 
    "query": { 
    "multi_match" : { 
     "query": "Troy", 
     "fields": [ 
       "customer_num^2", 
       "full_name^3", 
       "invoice_numbers", 
       "ticket_number", 
       "transaction_number" ]       
       } 
      }, 
      "highlight" : { 
        "fields" : [ 
        {"customer_num":{}}, 
        {"full_name":{}},       
        {"invoice_numbers":{}}, 
        {"ticket_number":{}}, 
        {"transaction_number":{}} 
       ] 
      } 
      } 
      } 
      } 
Verwandte Themen