我正在开发一款本地化的C#.NET应用程序,我们使用一个strings.resx
文件来翻译应用程序中硬编码的字符串。我使用以下代码来提取这些字符串:
using MyNamespace.Resources
...
string someString = strings.someString;
但是,现在我想要能够在调用时定义字符串的名称,类似于这样:
string someString = GetString("someString");
我已经开始尝试使用ResourceManager
,但是我找不到一种方法来引用我的strings.resx
文件。
我该怎么做呢?
ResourceManager
。我已经通过ResourceManager rm = strings.ResourceManager;
使其工作了。无需实例化:它已经存在了。 - Bart Friederichs"RootResourceName"
或SomeClass
应该是什么。使用strings.ResourceManager
更容易。 - Bart FriederichsAssembly.GetCurrentAssembly
或类似方法。根据文档,“RootResourceName”是“资源文件的根名称,不包括扩展名,但包括任何完全限定的命名空间名称。例如,名为MyApplication.MyResource.en-US.resources的资源文件的根名称为MyApplication.MyResource。”但是,如果资源管理器已经可用,最好直接获取。 - Vlad