查找其他程序集中的所有嵌入资源

时间:2012-07-07 18:57:11

标签: c# resources embedded-resource

我正在为我的项目进行本地化工作。为此,我有一个类应该从另一个程序集加载一个嵌入的资源,然后读出字符串。

但我还需要知道这个程序集包含哪些资源文件。 这些数字和语言是未知的。

那么如何找出" .resx"这个程序集中的文件名为? 这些都有相同的方案:" de-DE.resx"," en-US.resx"等等。

我需要知道这个程序集中包含了多少个文件, 以及它们是哪种语言。

我知道ResourceManager可以访问它们,因此也应该可以以编程方式访问这些信息......

1 个答案:

答案 0 :(得分:28)

您应该使用GetManifestResourceNames班级(msdn)中的Assembly方法:

string[] resourceNames = this.GetType().Assembly.GetManifestResourceNames();
foreach(string resourceName in resourceNames)
{
    Console.WriteLine(resourceName);
}