Tag: ienumerable iorderedenumerable

是否可以在不使用OrderBy的情况下将IEnumerable转换为IOrderedEnumerable?

假设有一种扩展方法可以根据SortMethod枚举指定的几种排序类型(即按各种属性排序)来订购IQueryable。 public static IOrderedEnumerable OrderByX(this IQueryable values, SortMethod? sortMethod) { IOrderedEnumerable queryRes = null; switch (sortMethod) { case SortMethod.Method1: queryRes = values.OrderBy(a => a.Property1); break; case SortMethod.Method2: queryRes = values.OrderBy(a => a.Property2); break; case null: queryRes = values.OrderBy(a => a.DefaultProperty); break; default: queryRes = values.OrderBy(a => a.DefaultProperty); break; } return queryRes; } 在sortMethod为null的情况下(即指定我不关心值的顺序),是否有一种方法来代替通过某个默认属性进行排序,而只是将IEnumerator值传递给“订购“无需执行实际排序? 我希望能够调用此扩展,然后可能执行一些额外的ThenBy排序。