public class SampleProduct : ProductContent
{
[JsonProperty(PropertyName = "heading")]
public override string DisplayName { get => base.DisplayName; set => base.DisplayName = value; }
}
When its indexed I can see that the field in the index is name: heading$$string. And when trying to sort on this property with:
var searchResult = _client.Search<SampleProduct>()
.PublishedInCurrentLanguage();
.Order(p => p.DisplayName)
.GetContentResult();
The documents does not get sorted correctly. If I remove the JsonProperty-attribute and re-index all content it works correctly.
My question would be: why are you setting a JSON property name?
If you're using the SampleProduct in your own API or view then I'd suggest mapping it into something relevant for the presentation layer - a view/API model object.
I have the following product content:
When its indexed I can see that the field in the index is name: heading$$string. And when trying to sort on this property with:
The documents does not get sorted correctly. If I remove the JsonProperty-attribute and re-index all content it works correctly.