問題タブ [readonly-collection]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
1584 参照

c# - ICollection を返すIReadOnlyCollection として?

type のフィールドがありICollection<T>ます。読み取り専用にする簡単な方法はありますか?

ReadOnlyCollection<T>クラスがを受け取ることに注意してください。ユーザーがコレクションを変更できないようIList<T>にする方法を探しています。ICollection<T>

元を使用してAsEnumerable。メソッドは、元の型にキャストバックされる可能性があるため、それを保証するものではありませんList

0 投票する
1 に答える
183 参照

.net - IList を公開するまたは ReadOnlyCollection読み取り専用プロパティの場合?

ReadOnlyCollection<T>クラスが新しいインターフェイスを実装する.NET 4.5以降IReadOnlyCollection<T>、これを持たない古いバージョンのライブラリに制約されていることに気付きました。

どちらがベストプラクティスと見なされているかを知りたいです。

0 投票する
2 に答える
7325 参照

c# - C# でリストを読み取り専用にする

このサンプルコードがあります。私がやりたいのは、「Nums」値が「AddNum」メソッドを使用してのみ書き込まれるようにすることです。

どういうわけか、AsReadOnly() と readonly キーワードに関して多くのことを試しましたが、やりたいことを実行できないようです。

プロパティにアクセスするために必要なコードのサンプルを次に示します。

私は本当に「アクセス 1」が失敗し、「アクセス 2」が値を設定できる唯一の方法であることを望んでいます。助けてくれてありがとう。

0 投票する
1 に答える
215 参照

python - .readOnlycollection の Item プロパティが機能しない

CPython3.4を使用して、Pythonでプロジェクトを作成しています。ReadOnlyCollection を含む dll をインポートしました。そのリストから(インデックスで)1つのアイテムを取得するにはどうすればよいですか? 私はすでに .Item(index) と .Items を使用しようとしましたが、次のように書かれています:

「オブジェクトには属性「項目」がありません

しかし、 .Count を使用すると、カウントが得られます。ドキュメントには、このオブジェクトで両方を使用できると書かれています。https://msdn.microsoft.com/en-us/library/ms132474(v=vs.110).aspx dll は VB.net で記述されています。

その ReadOnlyCollection から 1 つのアイテムを取得するのを手伝ってくれる人はいますか?

0 投票する
3 に答える
1525 参照

c# - 読み取り専用リスト>

field がある場合List<Dictionary<>>、それを読み取り専用プロパティとして公開する方法は?

例:

こんな感じで晒せます

ただし、ディレクトリを変更することは可能です:

これは、読み取り専用にする試みです

このアプローチの問題は明らかだと思います。それは、新しい辞書の新しいリストです。

私がしたいのは、List<>.AsReadOnly()に似たもので、プロパティが のラッパーとして機能するようにすること_listです。

0 投票する
5 に答える
1256 参照

c# - 追加なしの公開リスト

クラスの外部からアクセスできるようにしたいだけでなく、リストを作成RegisterObjectsする唯一の方法は.RegisterObjectsTryRegisterObject(object o)

これは可能ですか?

0 投票する
3 に答える
4233 参照

c# - ReadonlyCollection、オブジェクトは不変ですか?

ReadOnlyCollection を使用してオブジェクトを不変にしようとしています。オブジェクトのプロパティを不変にしたいのです。

しかし、私は少し混乱しました。

foreach を使用してオブジェクトのプロパティを MyReadOnlyList に変更しようとしましたが、値のプロパティを変更できますが、正しいですか? ReadOnlyCollection が追加レベルを設定して、オブジェクトを不変にすることを理解しました。