asp.net Получить все ресурсы из .resx без указания культуры (ResourceManager.GetResourceSet)

, я впервые столкнулся с вопросом, похожим на мой здесь, при переполнении стека: Прокрутите все ресурсы в 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 / Full Name
  • PhoneNumber / Phone Number
  • State / State

Запись в файле ресурсов для конкретной культуры

  • Штат / округ

Когда я вызываю GetResourceSet для конкретной культуры, я получаю только 1 запись. Я ожидал (и хочу) вернуть все 3 записи с переопределенной записью для одной культуры. Вот что я хочу вернуть:

  • FullName / Full Name
  • PhoneNumber / Phone Number
  • State / County

Могу ли я как-то это сделать? Спасибо.

6
задан Community 23 May 2017 в 11:53
поделиться