无法使用给定文化加载ResourceSet

时间:2013-11-25 10:08:36

标签: c# embedded-resource cultureinfo

我想从资源文件指定的文化信息中获取资源键值。这是代码;

CultureInfo languageInfo = CultureInfo.CurrentUICulture;
ResourceSet rset = myresourceClass.ResourceManager.GetResourceSet(languageInfo, true, false);

GetResourceSet的第三个参数为false,因为如果为true,则加载默认资源文件。我想要指定一个。但如果是这样,它返回null。为什么会这样?

1 个答案:

答案 0 :(得分:1)

假设你有一个像“MyNamespace.Resources”这样的类库,你有你的resx文件和生成的设计器文件,你有另一个类库“MyNamespace.ClassLibrary”,它引用了资源。 Resoo文件应该将Build Action设置为“Embedded resource”。

您需要确保“MyNamespace.ClassLibrary”中的“MyNamespace.Resources”引用将“Copy to Local”属性设置为True,以便在构建时复制resoruce dll。

如果您直接使用资源管理器访问resx文件,则需要拥有resx文件。