Впервые я столкнулся с вопросом, похожим на мой здесь, при переполнении стека: Прокрутите все ресурсы в ResourceManager - C #. Это решило только часть того, что мне нужно было сделать. Когда вы запрашиваете запись в файле ресурсов для определенной культуры, если ее нет, по умолчанию возвращается файл ресурсов нейтральной культуры.
Мне нужно перебрать каждую запись для данного файла ресурсов, а GetResourceSet требует культуры. Например, у меня есть нейтральный файл ресурсов с 3 записями в нем и файл ресурсов для конкретной культуры, сопровождающий нейтральный файл с 1 записью.
Мой файл с нейтральным примером ресурса - MyResource.resx, а файл примера ресурса для конкретной культуры - MyResource.en-gb.resx. Следующий код показывает, как я сейчас пытаюсь пройти и получить доступ ко всем записям ресурсов.
Dim cultInfo as New CultureInfo(culture)
For Each entry As System.Collections.DictionaryEntry In myResourceManager.GetResourceSet(cultInfo, True, True)
Next
Нейтральные записи файла ресурсов
- FullName / полное имя
- PhoneNumber / Номер телефона
- Штат / Штат
Запись файла ресурсов для конкретной культуры
- Штат / Страна
Когда я вызываю GetResourceSet для конкретной культуры, я получаю только 1 запись. Я ожидал (и хотел) вернуть все 3 записи с переопределенной записью для одной культуры. Вот что я хочу вернуть:
- FullName / полное имя
- PhoneNumber / Номер телефона
- Штат / Округ
Как я могу это сделать? Спасибо.