回答

0

search template端點未在NEST中映射,並帶來一些挑戰,因爲它與查詢通常構造方式有很大不同。我們實際上正在研究這個問題(in this branch),並且希望在即將到來的1.1版本中獲得此功能。這裏有一個鏈接到original issue用於跟蹤目的。

編輯:忘了提,端點可在低級別Elasticsearch.Net客戶端,您可以通過ElasticClient訪問:

var client = new ElasticClient(...); 
client.Raw.SearchTemplate(...); 
+0

我知道低層elasticsearch.net提供這一點,但很好奇,就巢側模板正確的方法。謝謝你的確認。 – 2014-09-05 20:23:36

0

搜索模板端點巢2.X被映射。

有一個關於模板化在這裏一個普通的例子: https://www.elastic.co/guide/en/elasticsearch/client/net-api/2.x/template-query-usage.html

下面是關於如何聯模板可以用一句話建議可以使用自動分頁選項的一些信息: https://www.elastic.co/guide/en/elasticsearch/client/net-api/2.x/suggest-usage.html

這裏是一個問題GitHub我發佈了一些關於如何將模板保存到Elastic的信息: https://github.com/elastic/elasticsearch-net/issues/2176

下面是如何使用NEST的一般示例:

var templateRequest= new PutSearchTemplateDescriptor(new Id("my_template")); 

templateRequest.Template("{\"multi_match\":{\"query\":{\"query\":\"{{suggestion}}\",\"fields\":[\"field1\",\"field2\"]}}}"); 

var response = ElasticClient.PutSearchTemplate(templateRequest); 

當在整理建議使用模板:

.Collate(c => c 
    .Query(q => q 
     .Indexed("my_template") 
    ) 
    .Prune() 
) 
0

另一個問題上similiar線,是PutSearchTemplateDescriptor write方法調用預先regsitered模板?

我已經註冊了模板的.scripts中,但無法找到調用來自NEST客戶

+0

歡迎您發佈這個新的問題! – alexbt 2016-09-14 19:46:46