使用 NEST API Elasticsearch 的多搜索查询语法

MultiSearch Query Syntax Using NEST API Elasticsearch

有谁知道使用 NEST 库 7.6 版使用 MultiSearch 的语法。

我们已经尝试过:

var result = client.MultiSearch(ms => ms
    .Search<ElasticsearchProject>("projects", s => s.MatchAll())
    .Search<Person>("people", s => s.MatchAll())
);

这似乎在 7.6 版本中不再有效

var d = new MultiSearchDescriptor();
            d.Search<ElasticsearchProject>("projects", s => s
                             .Index("<indexname>")
                               .Query(q => q
                                       .MatchAll()
                                     )
                             .From(1)
                             .Size(10)
                           );
            d.Search<Person>("people", s => s
                           .Index("<indexname>")
                           .Query(q => q
                           .MatchAll()
                               )
                           .From(1)
                           .Size(10)
                         );

            var re = _elasticClient.MultiSearch(d);

MultiSearch 需要一个 Indices 作为第一个参数,尽管它是一个可选参数。要仅传递委托,请标记参数

var result = client.MultiSearch(selector: ms => ms
    .Search<ElasticsearchProject>("projects", s => s.MatchAll())
    .Search<Person>("people", s => s.MatchAll())
);