Возврат ресурсов на основе ключа - PullRequest
1 голос
/ 03 октября 2011

Исходя из моего предыдущего вопроса , похоже, что выделенные ресурсы не будут работать в моем проекте.Итак, план №2 - использовать обычные ресурсы через файл resx.

Суть моего вопроса: Можно ли написать функцию, которая будет принимать строковый ключ и возвращать этот ресурс? Я попробовал это с отражением, но не смог заставить его работать.

Вот пример того, как я хотел бы, чтобы это работало.Допустим, у меня есть файл Resources.resx, который имеет два файловых ресурса: MainMap и OverWorld.Я хотел бы написать функцию, которая работает следующим образом:

string mainMapContent = getFromResources("MainMap"); // => returns Resources.MainMap
string overWorldCOntent = getFromResoures("OverWOrld"); // => returns Resources.OverWorld

Я попытался использовать отражение для создания экземпляра класса Resources, но выручил, когда понял, что конструктор является внутренним, и нет пустого конструктораЯ могу использовать.

Есть ли способ написать эту getFromResources функцию?Я не могу понять это.

Примечание: Я, вероятно, положу это в библиотеку, если смогу;он также должен работать со средой выполнения Silverlight.

1 Ответ

2 голосов
/ 03 октября 2011

Строго типизированный класс ресурсов, генерируемый посредством генерации кода, основан на нетипизированном классе ResourceManager.Вы должны быть в состоянии использовать ResourceManager.GetObject

...