elastic / elasticsearch-net

This strongly-typed, client library enables working with Elasticsearch. It is the official client maintained and supported by Elastic.
https://www.elastic.co/guide/en/elasticsearch/client/net-api/current/index.html
Apache License 2.0
8 stars 1.15k forks source link

8.15.6 - Make public SortOptions.AdditionalPropertyName #8335

Open niemyjski opened 1 month ago

niemyjski commented 1 month ago

Elastic.Clients.Elasticsearch version: 8.15.6

Elasticsearch version: 8.15.1

.NET runtime version: 8.x

Operating system version: Any

Description of the problem including expected versus actual behavior:

Previously SortOptions was FieldSort and we used the SortKey in our Foundatio.Parsers visitors (https://github.com/FoundatioFx/Foundatio.Parsers/blob/main/src/Foundatio.Parsers.ElasticQueries/Visitors/GetSortFieldsVisitor.cs#L21). This was converted to SortOptions but now we don't have access to the new property value which exposes the field being sorted on (AdditionalPropertyName)... We have our own apis to build up sorting via fluent ui and translate that to your search descriptors.

Expected behavior

We should be able to see how SortOptions are sorted...

Reference: https://github.com/FoundatioFx/Foundatio.Parsers/pull/84

flobernd commented 1 month ago

Hi @niemyjski,

I don't want to expose the AdditionalPropertyName field for the reasons I stated in the other issue.

However, we can happily add a SortKey property that just reflects the value of the internal AdditionalPropertyName field.

niemyjski commented 1 month ago

That would solve this use case.