現在、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);
(同じリストに割り当てると、パフォーマンスの問題が発生する可能性があると思います。ところで、私は推測しています!)