在当前网站支持多语言

时间:2013-05-14 07:33:53

标签: c# asp.net .net-4.0

我们有一个很棒的ASP.NET网站(实际上是一个Web项目),所有页面目前都是英文,公司决定支持法国和荷兰?

那么这样做的最佳选择是什么,

主要因素是:

1-performance

2快速简便的实施

3通用解决方案,因此我们可以轻松添加新语言

我想到了这个选项:

1-为每个当前页面添加另一页(因此我们需要为每种语言添加大约800页)

2-翻译代码中的所有文本:button1.text = GetText("button1");

3-添加翻译所有文本的方法:

void translate (Control control)
{
   foreach(Control cn in control.Controls)
   {
     TranslateallTextsofControl(cn);
   }
}

那么真正的另一个选择是什么?

有些人必须这样做吗?什么是最好的解决方案? 有什么建议吗?

1 个答案:

答案 0 :(得分:1)

根据项目的状态,您需要评估快速入侵与良好的全球化/本地化解决方案是否是您所需要的。

你应该看看这些文章:
http://www.codeproject.com/Articles/38907/ASP-NET-Localization-Quick-Reference http://msdn.microsoft.com/en-us/library/ms247245(v=vs.100).aspx

然后计算出更多的工作。

通常每个人所做的事情(在应用程序本身的初始阶段)都是构建全球化系统。实际上没有任何其他解决方案。

我强烈建议采用正确的全球化路线,然后最终添加一种新语言就是创建正确的资源文件并将其提供给应用程序。

非通用黑客,就像你添加的代码一样,最终会咬你,如果你将来必须支持从右到左的语言,它甚至可能是一个特殊的地狱。