2012-02-21 88 views
7

今天我遇到了一個兩難的問題.net中的ReadOnlyCollection<T>ReadOnlyCollectionBuilder<T>有什麼區別?.Net中的ReadOnlyCollection <T>和ReadOnlyCollectionBuilder <T>有什麼區別?

ReadOnlyCollection<T>對象中,我們無法添加和移除項目。

ReadOnlyCollectionBuilder<T>對象中,我們可以添加和刪除項目。

如果我們可以在ReadOnlyCollectionBuilder<T>對象中添加和刪除項目,那麼爲什麼只讀名稱?

回答

12

根據the documentation,ReadOnlyCollectionBuilder只是一個只讀集合的​​構建器。這個想法是,建設者是可變的,但只能在一個小範圍內使用。您將創建一個構建器,添加一個元素負載,然後調用ToReadOnlyCollection高效地創建數據的只讀視圖。 (這會重置構建器,因此您可以避免在創建後變更只讀集合的​​可能性。)