[英]c# nest for elasticsearch: how to convert query that updates particular field of elastic search document to nest?
我們有一個文檔,其中包含字段“ sortScore”和“ id”。 我們要更新可以由“ id”唯一標識的特定文檔的“ sortScore”。
我為v 5.4.1創建了彈性搜索查詢,這完美地更新了“ sortScore”:
POST /stock/1364740/_update
{
"script" : {
"inline": "ctx._source.sortScore += params.count",
"lang": "painless",
"params" : {
"count" : 5
}
}
}
與此對應的c#嵌套查詢是什么?
您的查詢看起來不太正確; URI的索引名稱為"stock"
,id為"1364740"
,但似乎沒有類型名稱。
使用NEST的更新請求如下所示
var updateResponse = client.Update<object>(1364740, u => u
.Index("stock")
.Script(s => s
.Inline("ctx._source.sortScore += params.count")
.Lang("painless")
.Params(d => d
.Add("count", 5)
)
)
);
產生請求JSON
POST http://localhost:9200/stock/object/1364740/_update
{
"script": {
"params": {
"count": 5
},
"lang": "painless",
"inline": "ctx._source.sortScore += params.count"
}
}
請注意,該請求在URI中具有一個類型名稱object
,該object
是從object
通用類型參數推斷出來的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.