Использование ресурсов .NET без создания

У меня есть приложение с файлом .resx. Файл Resx представляет собой простой XML, но после того, как ресурсы будут сохраняться в сборке. Поэтому для изменения ресурсов мне нужно перестроить свои сборки ресурсов. Есть ли способ использовать ресурсы непосредственно из файла resx?

Ответ 1

Как упоминалось в mdm, но не явно написано Нет, вы не можете сделать это без компиляции или без ResourceManager.CreateFileBasedResourceManager.

Ресурс имеет структуру XML в части .resx, но в этих частях показан только компилятор, где можно найти файлы, которые должны быть включены, и он существует только в вашем проекте, а не после сборки.

Файл ресурсов определяется как внедренный ресурс, означает, что он вложен в сборку. Любые изменения приведут к необходимости в новой компиляции.

Ответ 2

Если вы используете класс ResourceManager для доступа к своим ресурсам, вы можете использовать resgen для компиляции вашего файла .resx в файл .resources. Затем вы можете создать новый экземпляр класса ResourceManager, используя ResourceManager.CreateFileBasedResourceManager вместо new ResourceManager(...). Это позволяет указать имя файла ресурса и каталог для поиска внутри.

В качестве примера рассмотрим подход B в этом уроке.