List<T>.AsReadOnly() について

自分用のメモのような記事です。

var list = new List<string> { "tarou", "hanako", "jirou" };

// 読み取り専用に変換
ReadOnlyCollection<string> readOnlyList = myList.AsReadOnly();

readOnlyListは要素へのアクセスできますが、配列要素の追加や削除、変更はできません。 ReadOnlyリストにすること値を保護しながら他のコンポーネントやクラスへ渡すことができます。