簡體   English   中英

NEST ElasticSearch.NET轉義特殊字符

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM