Last updated: Nov 16 2015

How it works

By default, search results are sorted by relevance. You can change the sort factor to OrderBy, ThenBy, OrderByDescending, or ThenByDescending.

Example:

C#
client.Search<Article>()
    .OrderBy(x => x.PublicationDate)
    .ThenBy(x => x.Author.Name)

Sorting is supported for numerical types such as int, double, DateTime, and string.

Null values and SortMissing

By default, if a document has a null value in a field used to sort search results, it is sorted first when using the OrderBy and ThenBy methods, and last when using the OrderByDescending and ThenByDescending methods. For all types except string, you can change this behavior by supplying a second parameter of the SortMissing enum type.

C#
client.Search<Article>()
    .OrderBy(x => x.PublicationDate, SortMissing.Last)

Sorting by geographical distance

The OrderBy and OrderByDescending methods have an overload for ordering by geographical distance for fields of type GeoLocation. For more information, see Geo Search.

Comments

When I try to sort by decimal type, EPiFind throws an exception 

Sorting by expressions of type System.Decimal is not supported

If decimal is not supported, how can I sort the product's price?