Используя NEST, у меня есть запрос, похожий на этот
var searchRequest = new SearchRequest<T>()
{
...
Aggregations = new TermsAggregation("field1")
{
Field = "field1",
Aggregations = new TermsAggregation("field2")
{
Field = "field2",
}
},
...
}
await _elasticClient.SearchAsync<T>(searchRequest)
, и я получаю результаты, как я ожидал, с агрегацией на "field2" для каждой альтернативы с "field1"
Мне нужны другие агрегаты, поэтому я поместил термины агрегации в AggregationDictionary.
var aggs = new AggregationDictionary();
aggs.Add("field1", new TermsAggregation("field1")
{
Field = "field1",
Aggregations = new TermsAggregation("field2")
{
Field = "field2",
}
})
...
var searchRequest = new SearchRequest<T>()
{
...
Aggregations = aggs,
...
}
...
await _elasticClient.SearchAsync<T>(searchRequest)
Теперь я получаю агрегацию на "field1", но не нахожу агрегацию на "field2".
Я что-то упустил или это должно работать таким образом?
Редактировать 1: Добавлен ключ для for AggregationDictionary.Add, чтобы мой пример кода (надеюсь) компилировался и включал мой SearchAsyn c call