З того, що я можу сказати, .NET 4.0 все ще не має списків, доступних лише для читання. Чому в рамках все ще не вистачає цієї функціональності? Це не один із найпоширеніших фрагментів функціональності для дизайну, керованого доменом ?
Однією з небагатьох переваг, яку Java має над C #, є це у вигляді методу Collections.unmodifiablelist (list) , який, здається, давно назрів у IList <T> або Список <T>.
Використання IEnumerable<T>
є найпростішим рішенням питання - ToList
може бути використаний і повернути копію.
List<T>
- це написати свій власний, у нас немає вбудованого класу, який би мені знав, який би підтримував усі функції "лише для читання"List<T>
поза коробкою, наприкладContains
, запити LINQ тощо.