リソースマネージャーのすべてのリソースにループするにはどうすればよいですか?
すなわち: foreach (ResourceManager の文字列リソース) //リソースで何かを行います。
ありがとう
リソース マネージャーを使用します。GetResourceSet () を使用して、特定のカルチャのすべてのリソースのリストを取得します。返された ResourceSet は IEnumerable を実装します (foreach を使用できます)。
Nico の質問に答えるには:IEnumerable
ジェネリックにキャストすることで an の要素を数え、 C# 3.5 で新しく追加された拡張メソッドIEnumerable<object>
を使用できます。Enumerable.Count<T>()
using System.Linq;
...
var resourceSet = resourceManager.GetResourceSet(..);
var count = resSet.Cast<object>().Count();
なぜすべてのリソースをループしたいのだろうか。
いずれにせよ、リソースを検索する場所またはベース名ResourceManager
を指定してインスタンス化する必要があります。その後、特定のリソースType
を取得することができますが、特定の `ResourceManager のすべてのリソースを取得したい場合ResourceSet
CultureInfo