elasticsearch C“Nest ElasticSearch无法映射”;代币;嵌套fluentMapping
我通过ElasticSearch Sense浏览器插件创建了以下索引,还创建了C#Nest Fluent映射。我可以在Nest中表达除nGrams过滤器上的“token_chars”之外的所有内容。我没有在C#nest上获得强类型属性来添加“token#u chars”。有人遇到过同样的问题吗 json和c#设置如下所示。 请帮忙
elasticsearch C“Nest ElasticSearch无法映射”;代币;嵌套fluentMapping,
elasticsearch,nest,
elasticsearch,Nest,我通过ElasticSearch Sense浏览器插件创建了以下索引,还创建了C#Nest Fluent映射。我可以在Nest中表达除nGrams过滤器上的“token_chars”之外的所有内容。我没有在C#nest上获得强类型属性来添加“token#u chars”。有人遇到过同样的问题吗 json和c#设置如下所示。 请帮忙 "analysis": { "analyzer": { "str_index_analyzer":
"analysis": {
"analyzer": {
"str_index_analyzer": {
"filter": [
"lowercase",
"substring"
],
"tokenizer": "keyword"
},
"filter": {
"substring": {
"max_gram": "50",
"type": "nGram",
"min_gram": "2",
"token_chars": [ /*Not able to map */
"letter",
"digit"
]
}
}
我没有在C#nest上获得强类型属性来添加“token#u chars”。有人面临同样的问题吗
var result=this.\u client.CreateIndex(“mkfindex1”,c=>c
.Analysis(a=>a.Analyzers)(an=>an.Add(“str\u index\u analyzer”,new CustomAnalyzer())
{
筛选器=新字符串[]{“小写”、“子字符串”},
标记器=“关键字”
})).TokenFilters(base=>base.Add(“substring”,新的NgramTokenFilter())
{
最大值=50,
明格拉姆=2,
/*“token_chars”:[//无法映射
“信”,
“数字”
*/
}))));
我遇到了同样的问题。解决方法是不使用Fluent映射,只需通过settings.Add()
方法将分析设置直接指定为Fluent字典条目。下面是一个正确配置索引的示例
var result=this.\u client.CreateIndex(“mkfindex1”,c=>c
.Settings.Add(“analysis.analyzer”、“str\u index\u analyzer”)
.Settings.add(“analysis.analyzer.str_index_analyzer.type”,“custom”)
.Settings.add(“analysis.analyzer.str_index_analyzer.tokenizer”,“关键字”)
.Settings.Add(“analysis.analyzer.str_index_analyzer.filter.0”,“小写”)
.Settings.Add(“analysis.analyzer.str_index_analyzer.filter.1”,“substring”)
.Settings.add(“analysis.filter.substring.type”,“nGram”)
.Settings.add(“分析.筛选.子字符串.最小值”,“2”)
.Settings.add(“analysis.filter.substring.max_gram”,“50”)
.Settings.add(“analysis.filter.substring.token\u chars.0”,“letter”)
.Settings.add(“analysis.filter.substring.token\u chars.0”,“digit”)
);
希望这有帮助。我也遇到了同样的问题。解决方法是不使用Fluent映射,只需通过
settings.Add()
方法将分析设置直接指定为Fluent字典条目。下面是一个正确配置索引的示例
var result=this.\u client.CreateIndex(“mkfindex1”,c=>c
.Settings.Add(“analysis.analyzer”、“str\u index\u analyzer”)
.Settings.add(“analysis.analyzer.str_index_analyzer.type”,“custom”)
.Settings.add(“analysis.analyzer.str_index_analyzer.tokenizer”,“关键字”)
.Settings.Add(“analysis.analyzer.str_index_analyzer.filter.0”,“小写”)
.Settings.Add(“analysis.analyzer.str_index_analyzer.filter.1”,“substring”)
.Settings.add(“analysis.filter.substring.type”,“nGram”)
.Settings.add(“分析.筛选.子字符串.最小值”,“2”)
.Settings.add(“analysis.filter.substring.max_gram”,“50”)
.Settings.add(“analysis.filter.substring.token\u chars.0”,“letter”)
.Settings.add(“analysis.filter.substring.token\u chars.0”,“digit”)
);
希望这有帮助。介意为此添加github问题吗?介意为此添加github问题吗?