动态本地化即时

时间:2018-03-21 10:17:00

标签: c# asp.net-mvc localization

我有管理员用户可以输入数据库的字符串。 用户可以选择语言,我想根据它来本地化这个文本。 我不想翻译字符串,因为我想保持语义相同。 我也研究过,但我发现只有静态字符串的例子。 下面的问题是相关的,但我不知道编译时的字符串。 用户可以插入任何字符串。

Relevant stackoverflow question

1 个答案:

答案 0 :(得分:1)

如果我理解你的问题,就没有简单的方法可以做到这一点。

所有UI本地化工具都关注本地化应用程序中存储的文本,例如按钮上的文本或错误消息。

如果您的应用程序显示数据库中的文本,这是一个完全不同的问题。

通常,您必须在数据库架构中允许使用多语言文本,并为管理员用户提供输入本地化文本的方法。或许,您必须使用

定义翻译表
  • 原始文本(或文字ID)
  • 语言ID
  • 本地化文字

在您的应用程序中,您必须从翻译表中获取本地化文本。

如果您使用原始文本作为翻译表的键,则无需修改原始表。如果使用ID,则需要将此ID存储在原始表中。两者都有利有弊。

如果您对翻译的质量和一致性不太担心,可以使用在线翻译服务。 Google和Bing翻译都有API。从技术上讲,它们都是有偿服务,但是 - 至少对Bing来说 - 我认为你必须在实际向你收取任何费用之前通过月度门槛。