c# - 如何使用 elasticsearch (NEST) 在 C# 中进行自动建议

标签 c# elasticsearch nest

我在我的 API 应用程序中使用 Elasticsearch (NEST)。 为基于名称的搜索创建索引。它工作正常。

var client = new ElasticClient(settings);
var item = new NameIndex { ContentId = data.ContentId, 
name = data.Name };
client.Index(item);

现在我想为上述索引生成一个新的自动建议 API。此 API 的目的是供用户在开始键入名称时使用,第一个字母是 B - 加载以 B 开头的所有电台列表,然后下一个字母“B”将列表进一步缩减到以 BB 开头的电台等。

我该怎么做?

最佳答案

下面的搜索查询可以根据用户输入的值(queryValue)从弹性索引中获取数据,它用于自动建议

var data = client.Search<NameIndex >(i => i.Query(m => m
.MatchPhrasePrefix(c => c.OnField(p => p.name )
.Query(queryValue)))
).Documents.ToList();

关于c# - 如何使用 elasticsearch (NEST) 在 C# 中进行自动建议,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38011120/

相关文章:

Elasticsearch - NEST - Upsert

c# - Nest-ElasticSearch.Net-如何分割搜索属性返回的FacetFilter命中计数

c# - 使用 Xamarin Forms 在 Android 上快速隐藏和重新出现键盘

带有查询输入的 ElasticSearch 查询

用于测试的 Elasticsearch 和 Testcontainers "None of the configured nodes are available"

elasticsearch - 如何在查询时而不是在 Elasticsearch 中的索引时应用同义词

c# - 如何使用NEST API搜索数据?

java - 如何在 python 交易模型中创建运行时间条件?

c# - 需要重载 operator< 和 null 检查

c# - 如何从 Exchange 服务器获取联系人列表?