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

问题描述 投票:13回答:1

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

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

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

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

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

c# resources embedded-resource
1个回答
28
投票

你应该使用GetManifestResourceNames类(Assembly)的msdn方法:

string[] resourceNames = this.GetType().Assembly.GetManifestResourceNames();
foreach(string resourceName in resourceNames)
{
    Console.WriteLine(resourceName);
}
© www.soinside.com 2019 - 2024. All rights reserved.