Найти все встроенные ресурсы в другой сборке
Я работаю над локализацией своего проекта. Для этого у меня есть класс, который должен загружать внедренный ресурс из другой сборки, а затем считывать строки.
Но также мне нужно знать, какие файлы ресурсов содержатся в этой сборке.
Число и языки которых неизвестны.
Итак, как мне узнать, как называется файл .resx в этой сборке?
Все они имеют одну и ту же схему: "de-DE.resx", "en-US.resx" и т.д.
Мне нужно знать, сколько из этих файлов содержится в этой сборке,
и какие языки они есть.
Я знаю, что ResourceManager имеет к ним доступ, поэтому у него также может быть доступ к этой информации тоже программно...
Ответы
Ответ 1
Вы должны использовать метод GetManifestResourceNames
из класса Assembly
(msdn):
string[] resourceNames = this.GetType().Assembly.GetManifestResourceNames();
foreach(string resourceName in resourceNames)
{
Console.WriteLine(resourceName);
}