[英]NEST ElasticSearch.NET Escape Special Characters
我一直在嘗試將NEST客戶端用於Elastic Search,但在過濾包含特殊/保留字符(例如'/')的字詞時,似乎遇到了障礙
下面是我的模型的JSON表示形式。
"categories": {
"count": 1,
"default": "root/Hello/World/Category",
}
提交對category.default字段的任何部分的搜索時,例如“ root”或“ Hello”,我將收到一個匹配項,但是搜索完整字符串或任何包含'/'的字符串時,找不到匹配項。
我從一些研究中了解到,這是因為在索引/標記化過程中保留字符已被替換-但是我仍無法確定解決此問題的方法。
任何幫助將不勝感激
下面添加了示例搜索查詢
var result = ElasticSearchClient.Search<Schema.Product>(s => s
.From(0)
.Size(10)
.MatchAll()
.FilterRaw("{ \"term\": { \"categories.default\": \"root/Hello\" } }")
);
您將需要設置一個多字段,因為破折號會導致術語分裂。 我找到了一個類似問題的答案,該問題回答了您的問題: https : //stackoverflow.com/a/28859145/4134821
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.