Не удается загрузить файл resx в коде - PullRequest
1 голос
/ 25 декабря 2010

У меня есть библиотека C # (MyApp.ServiceLayer), и я хочу получить доступ к общему файлу resx (/Resources/global.en-GB.resx) из другой библиотеки (MyApp.Common).Я добавил ссылку с ServiceLayer на Common.

В папке / bin / Debug ServiceLayer у меня есть (среди прочего):

  • MyApp.Common.dll
  • en-gb / MyApp.Common.resources.dll.
  • / Resources / global.en-GB.resx

Reflector сообщает, что в MyApp.Common.resources.dll есть папка Resources и файл ресурсов: MyApp.Common.Resources.global.en-GB.resources

Этот код возвращает ошибку «Не удалось загрузить сборку».

ResourceManager resource = new ResourceManager("resources.global", Assembly.Load(new AssemblyName("MyApp.Common.resource")));

Почему я не могу добраться до него?

1 Ответ

0 голосов
/ 25 декабря 2010

Загрузка с помощью AssemblyName работает, только если файл ресурса был загружен в текущий домен приложений.

Используйте метод LoadFrom () вместо Load () для загрузки сборки из файла:

ResourceManager resource = new ResourceManager("resources.global", Assembly.LoadFrom(@"C:\full\path\of\the\assembly\MyApp.Common.resources.dll"));
...