18

リソースマネージャーのすべてのリソースにループするにはどうすればよいですか?

すなわち: foreach (ResourceManager の文字列リソース) //リソースで何かを行います。

ありがとう

4

2 に答える 2

29

リソース マネージャーを使用します。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();
于 2008-09-26T15:01:55.320 に答える
1

なぜすべてのリソースをループしたいのだろうか。

いずれにせよ、リソースを検索する場所またはベース名ResourceManagerを指定してインスタンス化する必要があります。その後、特定のリソースTypeを取得することができますが、特定の `ResourceManager のすべてのリソースを取得したい場合ResourceSetCultureInfo

于 2008-09-26T15:33:11.093 に答える