C# Nest Elastic Search 通配符查询 - 没有返回结果

C# Nest Elastic Search Wildcard Query - No Results Returned

我正在尝试使用通配符在 C# 中设置查询。我可以使用 MultiMatch 获得返回的正确数据,但没有成功使用通配符。这是我目前所拥有的:

public async Task<IEnumerable<SearchResultModel>> Search(string query)
     var queryResults = await elasticApp.SearchAsync<dynamic>(s => s
        .From(0)
        .Take(10)
        .Index(activeIndices)
        .Type(dataTypes)
        .Query(q => q
            .Bool(b => b
                .Should(m => m
                    .Wildcard(w => w
                        .Field("name")
                            .Value(w + "*")                            
                     )
                 )
             )
         )

至于函数参数 query 当使用 MultiMatch 时,你会在最后做 .Query(query),但是当我尝试将其放入使用 Wildcard 时出现语法错误.根据 NEST ES 文档,您似乎最后没有使用 .Query

目前返回一个空数组。

任何对此的见解都将不胜感激,因为我是使用 Nest 和 C# 的新手。

我通过执行以下操作解决了我的问题:

.Query(q => q                    
  .Bool(b => b                     
    .Should(m => m
      .Wildcard(c => c
        .Field("name").Value(query.ToLower() + "*")
      )
    )
  )
)

query 作为函数参数传入,我希望星号包含 query 之后的所有内容。