Я используюasticsearch 7.5 и клиент NEST.
Я хочу отсортировать запрос, и, как вы знаете, по умолчанию это A..Za..z. Я хочу, чтобы он не учитывал регистр.
Я пытаюсь использовать нормализатор, как объяснено здесь
PUT /testindex
{
"settings": {
"analysis": {
"normalizer": {
"case_insensitive": {
"filter": "lowercase"
}
}
}
}
}
И тогда я мог бы использовать его в отображении:
PUT /testindex/_mapping/testmapping
{
"properties": {
"Id": {
"type": "keyword"
},
"Name": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"normalizer": "case_insensitive"
}
}
}
}
}
Проблема возникает, когда я пытаюсь сделать это на C# клиенте NEST:
client.Indices.Create("testindex", e => e
.Settings(s => s
.Analysis(a => a
.Normalizers(n => n.Custom("case_insensitive",c => c.Filters("lowercase")))))
.Map(m => m
.Properties(p => p
.Text(st => st.Name("Name")
**.NORMALIZER**)))
);
Невозможно добавить нормализатор в поле свойства Name.
Есть идеи? Еще один способ сделать это эффективно?
Спасибо миллион.