Linq:为何orderby和thenby需要的接口不同

Linq:为什么orderby和thenby需要的接口不同?
同样都是排序,为什么orderby只要求调用者是IEnumerable就可以了,而ThenBy需要时IOrderedEnumerable接口呢?
这两个by功能上没看出有什么不同啊?
------解决方案--------------------
很明显,OrderBy是做用在普通IEnumerable上的,而ThenBy是仅仅作用在OrderBy处理结果上的。
------解决方案--------------------
ThenBy的意思是,如果第一个一样,那么按照它排序。

比如说,运动员参加举重比赛。我们规定,举重重量大的排在前面。举重重量一样,体重小的排在前面。
用LINQ写就是
data.OrderBy(x => x.Weight).ThenByDescending(x => x.PlayerWeight)