我正在根据https://docs.microsoft.com/en-us/aspnet/core/fundamentals/localization尝试本地化我的应用。我使用英语短语作为我的键,法语翻译作为我的价值。不幸的是,我有相当多的键,但情况有所不同(即“Hello World”和“HELLO WORLD”)。
.resx设计器不允许您输入两个键,但如果我在文本模式下编辑它,我的应用程序将构建,并且资源将被嵌入。但是,“Hello World”中的一个缺失了。
有没有办法做到这一点,如果没有,是否有解决方法?
答案 0 :(得分:2)
在教程的“关于标题”示例中提到:
或者,您可以使用传统方法并提供密钥 检索默认语言字符串。
因此,选项是使用资源键而不是实际字符串(请参阅Working with resource files部分)。然后,当您将字符串键添加到资源时,如Naming Resources指南中所述,请使用Pascal Casing代替您的资源键。
这意味着:
以“Hello World”和“HELLO WORLD”为例,您可以通过添加前缀/后缀标识来区分它们,如下所示:
HelloWorldDnCase
HelloWorldUpCase
但是,如果您仍然希望使用实际字符串作为键(类似于“关于标题”)示例,您可以使用单个键“Hello World”,然后在需要时以编程方式提升措辞它以全大写显示。