Heretehe
SearchQuery q = new SearchQuery(new CriteriaGroup(new Criteria("groupshierarchy", "1.01.1-at-SHOP1")), new LimitCriteria(1125, 50), new OrderByCriteria("productfield_field17", SortDirection.Ascending)); SearchResult<ProductIndexEntry> result = IndexManager.Current.QueryIndex<ProductIndexEntry>("Products", q);
1027310-Tyg Peru 10 bianco 0533
1027361-Tyg Peru 61 chardonnay 1758
1006117-Tyg Ella Plain 17 grey
1006116-Tyg Ella Plain 16 beige
1006104-Tyg Ella Plain 4 black
1008010-Tyg Eternity Plain 10 Off white 810 (enfärgad)
1008006-Tyg Eternity Plain 6 Brown 607 (enfärgad)
1008005-Tyg Eternity Plain 5 Gold 866 (enfärgad)
1008003-Tyg Eternity Plain 3 Green 867 (enfärgad)
1008002-Tyg Eternity Plain 2 Blue 869 (enfärgad)
1008001-Tyg Eternity Plain 1 Rouge 520 (enfärgad)
1008000-Eternity Plain provkollektion C
1026917-Tyg Pollin 17 grey A09
1026916-Tyg Pollin 16 sand A03
The actual names we are sorting on are the "eternity plain", "pollin", "ella plain", "peru", etc.
You can see that Ella plain comes after Peru, and after that comes Pollin. This is exact wrong behavior that we have described.
Naturally, this wrong order appears in the product list as well, since it is using the similar way of selecting products.