Перебрать все ресурсы в ResourceManager - C # - PullRequest
18 голосов
/ 26 сентября 2008

Как включить все ресурсы в менеджере ресурсов?

Т.е.: foreach (строковый ресурс в ResourceManager) // Делаем что-нибудь с ресурсом.

Спасибо

Ответы [ 2 ]

29 голосов
/ 26 сентября 2008

Используйте ResourceManager. GetResourceSet () для получения списка всех ресурсов для данной культуры. Возвращенный ResourceSet реализует IEnumerable (вы можете использовать foreach).


Чтобы ответить на вопрос Нико: вы можете сосчитать элементы IEnumerable, приведя его к универсальному IEnumerable<object> и использовать метод расширения Enumerable.Count<T>(), новый в C # 3.5:

using System.Linq;

...

var resourceSet = resourceManager.GetResourceSet(..);
var count = resSet.Cast<object>().Count();
1 голос
/ 26 сентября 2008

Интересно, почему вы хотите просмотреть все ресурсы?

В любом случае необходимо создать экземпляр ResourceManager, указав ему Type или базовое имя для поиска ресурсов. Тогда вы сможете получить ResourceSet, но для данного CultureInfo, т.е. если вы хотите получить все ресурсы для данного `ResourceManager

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...