【问题标题】:Multilingual website with dynamic content具有动态内容的多语言网站
【发布时间】:2014-03-31 14:21:53
【问题描述】:

我正在开发一个调查网站,我想让它多语言。现在,由于调查问题是从数据库动态加载的,我不能使用资源文件来解决这个问题。

是否有任何内置的 C# 库可以翻译页面内容?

【问题讨论】:

  • 您是否有不同语言的相同调查?如果您的问题在数据库中,那么您的数据库中是否有不同语言的数据库中的相同问题(如果有,只需根据语言上下文阅读正确的记录)。或者你说的是用一种语言有问题,然后有某种方法可以即时翻译这些问题(比如打电话给谷歌翻译或类似的东西)?请澄清
  • @LB2 :是的,你猜对了。我想即时翻译这些问题。由于我有大量问题,并且我希望它们使用大约 10 到 12 种语言,我不想用每种语言创建问题并将它们存储在数据库中。
  • 我尝试了 SS Google 翻译 API 并在项目中取得领先,但现在我发现许多翻译并不自然。我怎样才能得到这个芦苇?即使在谷歌翻译上,它也不自然。我听说过“在线 NLP”这个词,它对我的​​场景有用吗?
  • 没有必要摆脱这个问题,因为它可能对其他人有用。 AFAIK 自动翻译器并不完美,尽管有些更好,有些更差。如果你找到一个做得更好的工具/包/服务,你将不得不使用他们的 API,不管是什么。

标签: c# asp.net-mvc multilingual


【解决方案1】:

看看this SO thread。还有this project

【讨论】:

  • SS Google 翻译 API 为我工作。我创建了示例演示项目,一切都很完美。谢谢..!!
【解决方案2】:

您可以将句子存储在数据库中。如果要使用 3 种语言,则需要 3 行:id、language1、language2。然后您所要做的就是使用 id 引用它们并使用 SQL 查询对其进行自定义。例如:SELECT language1 FROM translations WHERE id=1

另一种方法是使用内置的谷歌翻译,但在很多情况下,它的翻译并不是那么好。

【讨论】:

  • 如我的评论中所述,我有 10 到 12 种语言。所以在我的情况下,将问题存储在数据库中并不是一个好的选择
  • 您应该将它们存储在某个地方或使用内置的谷歌翻译,并猜测这不是您想要使用的选项。您可以将其存储在数据库中,也可以存储在 xml 中,我认为没有更好的选择。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-05-08
  • 2011-08-06
  • 1970-01-01
相关资源
最近更新 更多