c# - Elasticsearch.NET & NEST - 搜索总是返回 0 个结果
问题描述
我正在尝试使用该ElasticClient.Search
方法进行搜索,但无论我设置什么术语或搜索的字段,我总是得到 0 个结果。
这是我的 POCO 的结构:
public class MyParent
{
public MyChild MyChild { get; set; }
}
public class MyChild
{
public string MyField { get; set; }
}
然后这是我的实际搜索代码:
string searchTerm = "myChild.myField";
string searchValue = "C";
Field searchField = new Field(searchTerm);
ISearchResponse<MyParent> result =
Client.Search<MyParent>(s =>
s.Query(q => q.Term(searchField, searchValue)));
if (result != null &&
result.Documents != null &&
result.Documents.Count != 0)
{
...
}
任何帮助表示赞赏!
解决方案
发现了问题。我没有设置索引!我将搜索代码更改为此,它可以工作:
ISearchResponse<MyParent> result =
Client.Search<MyParent>(s =>
s.Index("my_index_").Query(q => q.Term(searchField, searchValue)));
推荐阅读
- reactjs - TS 和反应状态 - 'RangeModifier' 类型的参数不可分配给类型的参数
- python - 如何使用 python 提高这个解析器的速度?
- php - 如何为访问 PHP 网站的访问者分配随机会话密钥?
- apache-flink - flink集群启动报错【ERROR】无法正确获取JVM参数
- java - 如何使用在查询中重复的值为 PreparedStatement 创建正确的 sql 查询(字符串)?
- amazon-web-services - 如何通过 Terraform 启动没有密钥对的 EC2 实例?
- python - 如何为列表中的每个元素添加值?
- terraform - 如何在 terraform DSL 中导入 Datadog JSON 模板?
- uml - PlantUML如何实现直箭头?
- python - Python-Unittest ddt 测试用例子集的 PyTest 标记