我现在使用 OrderByDescending 对 IEnumerable 集合的元素进行排序,而我所做的只是分配回同一个集合。
this.InputParts =
this.InputParts.OrderByDescending(lazy => lazy.Metadata.Priority);
从 msdn 看来,它似乎有一个延迟返回对象。(它有一个返回值,就像我在 C++ 中想象的值传递一样)
我想,应该有一些可以执行引用类型排序的东西。
说,而不是
this.InputParts =
this.InputParts.OrderByDescending(lazy => lazy.Metadata.Priority);
我们只是说,
//shall itself reorder the collection!
this.InputParts.SomeMSDNFunction(lazy => lazy.Metadata.Priority);
(我想分配回同一个列表可能会带来性能问题。顺便说一句,我只是猜测!)