kil*_*wuk 5 javascript asp.net server-side client-side internationalization
我们希望将Web应用程序国际化.是否最好输出翻译服务器端(用.net 4 C#编写)或客户端(Javascript)?
我们已经开始通过创建一个JS文件来实现客户端,这个文件包含一个包含英语短语作为键的对象(因此开发人员了解每个消息在上下文中的含义),其值是显示给客户端的字符串任何警报和提示.我们正考虑将其扩展到整个前端的所有措辞.
这是一个好主意还是最好在服务器端执行这种工作?
更新:包含它有助于摆脱争论,我们不会在我们的Web应用程序中大量使用服务器端控件,我们的大多数控件都是基于jQuery/JS的.
更新:此特定应用程序不公开可见(除了登录页面)因此SEO问题不适用.
国际化第一条规则:遵循标准方式。不要重新发明轮子。对于 Asp.Net,这意味着服务器端国际化。
嗯,有点像。如果您碰巧有大量动态创建的控件,您仍然需要一些客户端脚本的本地化机制。您可以集中它,即创建一个翻译字符串的全局数组和模型+控制器,这样您就可以通过 AJAX 调用填充它(尽管对于 JSON,X 最好用 J 替换...)。
无论如何,您的模型应该简单地从资源文件中检索适当的字符串,并且控制器应该将 JSON 提供给客户端(好主意是实际请求较小的块,即仅对给定视图/屏幕进行翻译,而不是对整个应用程序进行翻译)。
正如您所看到的,最好的是某种混合方法。出于多种原因,最好对整个应用程序使用一种本地化模型,即仅使用 *.resx 文件。
此外,国际化不仅仅是简单的字符串外部化......
归档时间: |
|
查看次数: |
3203 次 |
最近记录: |