看起來 Nest 以某種方式對我的聚合名稱應用了前綴,這可以在從 Elastic Search 回傳的原始 JSON 回應中看到(通過查看DisableDirectStreaming)。具體來說,這些前綴是sterms#、dterms#和range#。這些似乎取決于特別是如何進行聚合(字串項、雙/十進制項和范圍項)。
我在 Postman 中針對 ES 手動運行了 Nest 生成的相同查詢,它回傳了不帶前綴的聚合,所以我猜這是某個地方的 Nest 特定配置的結果。
我想通過配置而不是字串替換來洗掉這些。我在檔案中沒有看到這些,因此希望獲得一些有關如何防止回應物件上的前綴的指導。
uj5u.com熱心網友回復:
所以 Elastic 呼叫這些型別的鍵。您可以在此處找到有關它們的更多資訊。
要防止出現前綴,您可以將TypedKeys屬性設定false為SearchRequest. 這沒有特別好的記錄。這可能會對 Nest 反序列化聚合的能力產生不利影響,因此請謹慎使用。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/530386.html
標籤:C#弹性搜索巢
上一篇:如果字串字符小于9,則將前導'0'附加到字串字符,在elasticsearch中查詢時無需撰寫腳本
下一篇:調整彈性寫入性能
