我可能不太喜歡IOrderedEnumerable<T>
系列。IOrderedEnumerable <T>是一個固有的不可變集合嗎?我應該/可以屈服嗎?
如果我有一個字段,my_field
類型IOrderedEnumerable<T>
,並且我希望從公共屬性獲取器返回它,我可以簡單地return my_field;
?我已經習慣了yield
ING結果的IEnumerable<T>
防止外部修改內部舉行的集合,但似乎這可能不是必要的或可能甚至是不可能在IOrderedEnumerable<T>
的情況。
是嗎?
所以我不能以任意順序聲明的IOrderedEnumerable<T>
和yield
結果的返回類型,使得順序是由代碼而不是IComparable<T>
個基於屬性的比較的結構定義?是否遵循T
在IOrderedEnumerable<T>
必須始終執行IComparable<T>
?
是否有實現這個接口的.NET API的類,還是類型只有在運行時通過使用LINQ擴展獲取生成?