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

Sha*_*ade 13 c# resources embedded-resource

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

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

那么如何找出这个程序集中的".resx"文件是如何命名的呢?这些都有相同的方案:"de-DE.resx","en-US.resx",依此类推.

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

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

kma*_*zek 28

您应该使用GetManifestResourceNames从方法Assembly类(MSDN):

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