ResourceManagerのすべてのリソースをループする-C#
質問
リソースマネージャーのすべてのリソースにループするにはどうすればよいですか
つまり: foreach(ResourceManagerの文字列リソース) //リコースで何かをする。
ありがとう
解決
ResourceManagerを使用します。 GetResourceSet ()特定の文化のすべてのリソースのリスト。返されるResourceSetはIEnumerableを実装します(foreachを使用できます)。
Nicoの質問に答えるには、IEnumerable
の要素を一般的なIEnumerable<object>
にキャストして Enumerable.Count<T>()
拡張メソッド。C#3.5の新機能:
using System.Linq;
...
var resourceSet = resourceManager.GetResourceSet(..);
var count = resSet.Cast<object>().Count();
他のヒント
すべてのリソースをループするのはなぜだろうか。
とにかく、ResourceManager
をインスタンス化して、リソースを検索するType
またはベース名を指定する必要があります。その後、ResourceSet
を取得できますが、特定のCultureInfo
に対して、特定の `ResourceManager
所属していません StackOverflow