【发布时间】:2010-12-13 01:13:07
【问题描述】:
我想以与 NET 的 .resources(特别是 .po)不同的文件格式存储我的资源,因此我编写了一个自定义资源集,其中包含自定义资源读取器来检索它们。我使用 CreateFileBasedResourceManager 静态方法创建了一个 ResourceManager,该方法创建了一个新的管理器实例,该实例使用指定的资源集(我在我的案例中编写的自定义资源集)从特定目录中的文件中检索资源集,使用 Name.culture.resources文件名。
但是,我想更改文件名约定。我注意到有一个可覆盖的 GetResourceFileName 方法正是为了这个目的。但是使用反射器我注意到 CreateFileBasedResourceManager 使用的构造函数是私有的,否则无法设置“使用文件而不是程序集”标志。
有什么办法可以绕过这个,而不需要重新实现整个 InternalGetResourceSet 方法?
非常感谢!
【问题讨论】:
-
你有没有得到这个排序?您可以在应用程序中使用反射来解决“私人标志”问题
-
我使用反射器简单地复制资源管理器的实现并修改我需要的任何内容。不是很优雅,但很有效。
标签: c# resourcemanager