我有一个ASP.NET MVC网站,依靠资源文件进行UI国际化。 数据库中的一些数据将由useres(用他们的语言)生成,但有些数据由我生成,用户不应编辑它。对于那些系统数据,我需要在数据库中只存储一个“令牌”,并在将它翻译为用户的语言时翻译它。如何国际化来自数据库的数据?
我真的不喜欢在数据库中进行翻译并将每个文本列与翻译表连接起来的想法。
有什么替代品可以实现这个目标? 可能是数据库和资源的混合?
编辑:语言的数量是不确定的,现在我们正在使用3种语言,但我希望我们可能需要许多其他语言。
编辑2:这主要是针对目录数据...有些目录在同一个表中有系统和用户数据。系统数据需要翻译,因为用户无法编辑。
我不太想修改我的查询来加入语言表。你如何看待混合方法:来自数据库的数据和从资源进行翻译的代码? – Romias
@Romias:我认为这就是我上面提到的。您从数据库中提取数据并基于该数据从资源文件中提取适当的翻译。这是最典型的情况,实际上这是建议(通过IEEE)解决方案的DB本地化。 –