问题
Can it be advantageous for a method to return IOrderedEnumerable instead of IEnumerable?
回答1:
Only if you expect people to order that enumerable every time and would find it hard to figure out how to do this OR if you can provide a collection that implements that interface that can efficiently order its contents and is paired with an extension method that is aware of your collection.
Best option is to return a specific collection type (see Richter for details on that). 99 times out of 100 whoever gets even a simple enumerable can use the standard linq extension methods to order it if they want.
回答2:
Specifically, it would be worth doing if it makes sense for further .ThenBy
calls, and not otherwise.
来源:https://stackoverflow.com/questions/1783830/can-it-be-advantageous-for-a-method-to-return-iorderedenumerablet-instead-of-i