1

ReadOnlyCollection<T>これらのインターフェイスのコンシューマーがコレクションからのみ読み取ることができることを示すために使用するインターフェイスをいくつか設計しています。

ただし、提供されるコレクションは不変ではなく、時々変更されるため、設計が間違っているのではないかと考えています。a の子ReadOnlyCollection<T>も不変である必要がありますか?

4

1 に答える 1

7

このReadOnlyCollection<T>クラスは、不変のコレクションを提供することを意図したものではなく、可変リストの「読み取り専用」ラッパーを提供することを目的としています。ただし、基になるリストは常に変更可能であり、リストへの変更は読み取り専用コレクションに公開されます。

デザインで完全に不変のコレクションを公開する必要がある場合は、新しいImmutable Collections for .NETの使用を検討し、適切な不変のコレクションを公開する必要があります。

于 2013-06-17T18:12:29.457 に答える