List<T>
IReadOnlyCollection<T>
-Schnittstelle implementiert und stellt die AsReadOnly()
Methode, die ReadOnlyCollection<T>
zurückgibt (die wiederum implementiert IReadOnlyCollection<T>
).Liste <T> .AsReadOnly() vs IReadOnlyCollection <T>
Was ist die Verwendung/Grund für AsReadyOnly()
? Seine Existenz riecht nach einem oder zwei Randfällen, bei denen es einfach nicht reicht, die Liste einfach als IReadOnlyCollection<T>
zurückzugeben.
Am Anfang kann ich es zwar verhindern, dass man die Kosten wegwirft, aber es sieht so aus, als könnten Sie das mit ReadOnlyCollection<T>
s Items
Accessor machen.
BTW. Die Dokumentation für ReadOnlyCollection<T>
Typ liest
Stellt die Basisklasse für eine generische schreibgeschützte Auflistung.
, die in meinem Kopf, Konflikte mit einem Konstruktor als
beschrieben mitInitialisiert eine neuen Instanz der (...) Klasse, die ein Nur-Lese-Wrapper um die angegebene Liste ist.
Update: ich nicht sehen, dass ReadOnlyCollection<T>
‚s Items
geschützt ist.
Ich bevorzuge '.ToArray()'. Einfacher IMO! –
@KierenJohnstone wahrscheinlich auch langsamer. –